Linux学习总结

作者 : admin 本文共3159个字,预计阅读时间需要8分钟 发布时间: 2024-06-10 共2人阅读

单行注释:#

多行注释::<<! !

cd        # 进入家目录

cd ~      # 进入家目录

cd /      # 进入根目录

cd –      # 返回上一次目录

cd ..     # 进入上一级目录

cd ../..  # 进入上上级目录

# 写法一

[命令] &

# 写法二

nohup [命令] &

两种写法都可以,但存在根本上的区别。直接使用 命令 & 推到后台执行后,当前终端窗口断开,那么后台命令自动退出;使用 nohup 命令 & 推到后台,当前终端窗口断开也不会退出。

 

sleep 10 &

ps u -p 7499

我们执行一个 sleep 命令后会自动被推到后台执行,并显示PID,通过PID可以查询该进程正在运行。

jobs     # 查看当前窗口执行的后台命令

fg [id]  # 将作业切换到前台

bg [id]  # 将作业切换到后台

ls > tmp.log

可以看到,正常情况下 ls 显示了当前目录下的文件/文件夹,但是使用 > 重定向到另一个文件中,则当前终端就不会再显示,而是把输出都放到了 tmp.log 中。

★★★★★

>    # 将内容覆盖到文件

>>   # 将内容追加到文件

>/dev/null    # 将正常的内容输出为空

1>/dev/null   # 将正常的内容输出为空

2>/dev/null   # 将异常的内容输出为空

&>/dev/null   # 将全部内容输出为空(包括正常和异常)

tee [文件]     # 将内容覆盖到文件

tee -a [文件]  # 将内容追加到文件

!!    # 执行上一个命令

!p    # 执行上一次以p开头的命令

!20   # 执行历史命令编号为20的命令(使用 history 查看编号)

以 << 开头 + 开始语,最后以开头语一样的字符结尾

<<EOF

    注释内容1

    注释内容2

    注释内容3

EOF

符号

解释

$$

表示当前脚本 PID

$*

表示所有的位置参数

$@

表示所有的位置参数

$#

表示参数个数

$?

返回上一个指令的状态(0表示正常,其他数字表示异常)

$!

表示上个后台运行的PID

$0

表示当前脚本名

$1

表示第1个位置参数

$2

表示第2个位置参数

$n

表示第n个位置参数

at 5pm tomorrow

at date > /root/date100.txt

atq

at now+2 minutes

at date > /root/date100.txt

Linux学习总结插图

firewall-cmd –permanent –add-port=111/tcp

firewall-cmd –permanent –remove-port=111/tcp

firewall-cmd –reload

firewall-cmd –permanent –query-port=111/tcp

telnet

Linux学习总结插图(1)

 top -d 默认是3秒刷新

:<<!内容!

上面是linux的多行注释

当行注释用的#

#!bin/bash

case $1 in

“1”)

echo “周一”

;;

“2”)

echo “周二”

;;

*)

echo “other”

;;

esca

Linux学习总结插图(2)

案例 1 :从 1 加到 100 的值输出显示

#!/bin/bash

SUM=0

for((i=1;i<=100;i++))

do

SUM=$[$SUM+$I]

done

echo “sum=$SUM”

#!/bin/bash

sum=0

i=0

while [ $i -le $1 ]

do

sum=$[$sum+$i]

i=$[$i+1]

done

echo “sum=$sum”

Linux学习总结插图(3)

function getSum() {

SUM=$[$n1+$n2]

echo “和是=$SUM”

}

read -p “请输入第一个数n1” n1

read -p “请输入第二个数n2” n2

getSum $n1 $n2

cat t.txt | cut -d “/” -f 3 | sort | uniq -c | sort -nr

cat t.txt | awk -F “/” ‘{print $3}’ | sort | uniq -c | sort -nr

//要排序的前两位

cat t.txt | cut -d “/” -f 3 | sort | uniq -c | sort -nr | head -2

cat t.txt | awk -F “/” ‘{print $3}’ | sort | uniq -c | sort -nr | head -2

systemctl list-unit-files | grep “rsyslog”

date “+%Y-%m-%d %H:%M:%S”

2024-05-27 11:17:34

date “+%y-%m-%d %H:%M:%S”

24-05-27 11:17:45

1. 在当前目录及子目录中,查找大写字母开头的txt文件 

指令:       $ find . -name ‘[A-Z]*.txt’ -print

2.在/etc及其子目录中,查找host开头的文件 

 指令:     $ find /etc -name ‘host*’ -print

3.在$HOME目录及其子目录中,查找所有文件

指令:      $ find ~  -name ‘*’ -print 

4. 在当前目录及子目录中,查找不是out开头的txt文件

指令:      $ find . -name “out*” -prune -o -name “*.txt” -print 

 

灵活多变,积极沟通,这个社会什么物质都是需要争取的,积极争取就是了!!!

 

安装docker步骤:

yum -y install yum-utils

Linux学习总结插图(4)

systemctl start docker//启动docker

systemctl stop docker //停止docker

systemctl restart docker //重启docker

systemctl enable docker //设置开机自启docker

docker ps

yum makecache fast

sudo mkdir -p /etc/docker

sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["http://164cb9j1.mirror.aliyuncs.com"] } EOF

sudo systemctl daemon-reload

sudo systemctl restart docker

//建立系统自动启动的文件

vi /etc/systemd/system/redis.service

//redis的图形化界面

redis-cli -h 192.168.127.128 -p 6379 -a redis

set class:user:1 ‘{“id”:1,”name”:”zhangsan”}’

set class:user:2 ‘{“id”:2,”name”:”zhangsanfeng”}’

//求无序数字列表的和并打印无序数字

sort -n a.txt | awk ‘{sum+=$0; print $0} END {print “和=”sum}’

//查询home下面所有的文件统计个数和文件中的行数

find /home -name “*.*” -type f | xargs  wc -l

ifconfig ens33 | sed -ne ‘2s/^.*inet //’ -e ‘2s/ net.*$//p’

ifconfig ens33 | sed -n ‘2s/^.*inet//p’ | cut -d ” ” -f 2 

ifconfig ens33 | sed -n ‘2p’ | awk ‘{print $2}’

cut命令是以单个空格作为分隔符进行切割的

awk无论是单个还是多个空格进行切割,awk默认就是按照空格切割的

ifconfig ens33 | awk ‘NR==2 {print $2}’

上面 ‘NR==2 {print $2}’中的NR==2和后面不能有空格

Linux学习总结插图(5)

yum-config-manager –add-repo http://download.docker.com/linux/centos/docker-ce.repo

Linux学习总结插图(5)

yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Linux学习总结插图(5)

本站无任何商业行为
个人在线分享 » Linux学习总结
E-->