Linux常用命令总结_1

Linux常用命令总结_1Linux 常用命令总结 test develop engineer 文件 cd cd 切换到当前目录 cd 切换到上一层目录 cd 切换到之前的工作目录 相当于撤销操作 cd 切换到家目录 cp 复制 cp anaconda ks

大家好,我是讯享网,很高兴认识大家。

Linux常用命令总结(test develop engineer):

文件

cd

  • cd .:切换到当前目录
  • cd ..:切换到上一层目录
  • cd -:切换到之前的工作目录,相当于撤销操作
  • cd ~:切换到家目录

cp 复制

  • cp  anaconda-ks.cfg   anaconda-ks-temp.cfg
  • 拷贝文件夹  cp -r a a-temp

mv 移动和剪切命令

  • 文件重命名: mv 123 123.bak
  • mv  123  a  将123文件移动到a文件夹

mkdir

  • -p, --parents  可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录; 
  • -v, --verbose  每次创建新目录都显示信息

touch

rm

  • -i:防止不小心删除有用的文件,在删除之前给出提示。
  • -r:递归的删除目录。
  • -f:强制删除。

注意:rmdir命令只能删除空目录,rm –r命令可以删除目录及子目录。

  • –n:使用-n可以指定显示的行数,–n5 = –n 5

tail

  • -f或者—follow可以当正文信息发生变化时将变化的信息展示出来。
  • –n:同上(head)

wc:命令显示文件行、单词和字符数

  • -l:仅显示行数 line
  • -w:仅显示单词数 word
  • -c:仅显示字符数 chars

history

  • !1050:执行第1050行

echo

将一个命令的输出作为另一个命令的参数

  • echo “\$hostname”    # 打印结果:$hostname
  • num1=1;num2=2 echo $[$num1 + $num2]  # 数学运算
  • echo “$hostname”  # zcc
  • \也可以用作换行
  • zcc@DESKTOP-C33QO0S MINGW64 ~/Desktop $ echo a \ > d \ > c a d c zcc@DESKTOP-C33QO0S MINGW64 ~/Desktop 

    讯享网
  • 单引号:禁止所有的命令行扩展功能
  • 双引号:禁止所有的命令行扩展功能,但以下特殊符号除外:$,`,\,!

常用的快捷键

  • Ctrl + A:光标移动到命令行开始处 after
  • Ctrl + E:光标移动到命令行结尾处 end
  • Ctrl + U:删除到命令行所有内容;
  • Ctrl + 箭头:向左向右移动一个字。
     

find

  • -name:查找与指定文件名相匹配的文件 find /etc/ -name "*init???"
  • -size :+n:查找大于n、-n:小于等于n的文件。find /etc/ -size +2M、find . -size +12k 
  • -atime:查找访问时间超过/低于/等于n天的文件。
  • -mtime[+/-]n:查找更改时间超过n天不到n天或正好等于n天的文件。
  • -user loginID:查找属于loginID名(用户)的所有文件。find /root –user root、find /root –group root
  • -type:查找某一类型的文件,如f(文件)或d(目录)。find /etc/ -name init* -type f。

重定向到文件中

  • >:覆盖原文件内容
  • >>:在原文件之后追加内容

sort

  • -r:进行反向排序(降序),r是reverse的第一个字母。
  • -f:忽略字符的大小写,f是folds的第一个字母。
  • -n:以数字的顺序进行排序,n是numeric的第一个字母。
  • -u:去掉输出中的重复行,u是unique的第一个字母。
  • -t:-t c表示以c作为分隔符。
  • -k:-k n表示按照第n个字段进行排序。
  • -k n1,n2:表示先按第n1个字段进行排序,当第一个字段重复时再按照第二个字段排序。

uniq:去掉文件中相邻的重复行

  • -c:在显示的行前冠以该行出现的次数
  • -d:只显示重复行
  • -i:忽略字符的大小写
  • -u:只显示唯一的行,即只出现一次的行

chmod

  • r:4       chmod 755 file 
  • w:2      chmod g+w file 
  • x:1     
  • -:0

df:检查磁盘空间

  • df:显示文件系统中磁盘使用和空闲区的数量
  • df –h:列出每个系统(磁盘)的使用情况

  • 讯享网
  • df –i:列出每一个文件系统的i节点的使用情况

du:显示磁盘使用的总量

  • du –sh:某用户Home目录下所使用的全部磁盘空间信息。

diff:比较两个文件的差别

  • diff a.txt b.txt

grep

  • .:匹配除换行符之外的任意字符
  • [xyz]:匹配包含方括号中的任意一个字符;
  • [^xyz]:匹配包括方括号字符以外的字符;[^xyz] 会匹配 xa、ys
  • ^:grep  ^s a.txt  匹配s开头的行
  • $:grep  s$ a.txt  匹配s结尾的行
  • \w:字母或数字或文字或下划线
  • \d:匹配数字
  • \s:任意空白符
  • \bhello\b:匹配单词hello   \ba\w*\b # 匹配a开头的单词
  • c*:将匹配0个(即空白)或多个字符c;

扩展正则

  • +:重复一次或大于一次
  • ?:重复零次或一次
  • {n,m}:重复n到m次
  • |:或

注意:在基本正则表达式中,元字符等已经失去了它们原来的意义,可以使用转义字符(\)。

工具:https://tool.oschina.net/regex

egrep = grep -E = 扩展正则

  • -c:仅列出包含模式的行数;
  • -i:忽略模式中字母的大小写;
  • -n:在每行的最前面列出行号;
  • -v:列出没有匹配模式的行;
  • -o:只输出符合的字符串

awk

原理: 将文件逐行读入,默认以空格为分隔符切片,然后进行处理。

  • BEGIN 处理文本之前要执行的操作 awk 'BEGIN {print "BEGIN", "BEGIN"}{print $1}' /at.xt
  • END处理文本之后要执行的操作
  • FS = -F 设置切片分隔符,默认是空格  awk -F : # 以冒号为分隔符
  • RS 设置行读入的分隔符,默认是回车  awk 'BEGIN {RS="|"}{print $0}' #以|为分割逐行读入
  • NR 已读的记录行数  awk 'NR==2{print $0}' /a.txt  # 打印第二行
  • awk '$9~/404|500/' nginx.log # 取出第9列的内容进行正则匹配
  • awk '/hello/{print $0}'  a.txt  # 打印出现hello 的行,双斜杠包起来为正则

  • awk 'NR==5' 、awk 'NR==5{print$0}' 、sed -n 5p # 打印第5行
  • awk '{if($0==""){print NR}}' 、awk '/^$/ {print NR}' # 输出空行的行号
  • grep -vE '^$'、sed '/^$/d'、awk '!/^$/ {print $0}'  # 不输出空行
  • awk  '{(sum=sum+$6)}END{print sum}'  # 统计第6列和

sed 

流程:先行存储在模式空间,sed命令处理,送入屏幕,清空模式空间,再下一行。

双斜杠可以改为#等也是可以的,双斜杠之间是正则

  • sed -e '4 a hello' a.txt  # 第四行后面增加一行hello, -e是可省参数
  • sed -e '4 i hello' a.txt  # 第四行前面插入一行hello, -e可省
  • sed -e '2,4 c hello' a.txt  # 第2到4行被hello取代 -e可省
  • sed -e '2,4 d hello' a.txt  # 第2到4行被删除 -e可省
  • sed -e '/hello/p' a.txt  # 打印匹配到hello的行 -e可省
  • sed -e 's/hello/hi/g' a.txt  # 把全部hello用hi替换 -e可省
  • sed -i 's/hello/hi/g' a.txt  # 把全部hello用hi替换,并修改原文件

vi

  • -R:以只读方式打开一个文件。
  • 2、插入模式:
  • (1)a:进入插入模式并在光标之后进行添加;
  • (2)i:进入插入模式并在光标之前进行添加;
  • 3、命令行下修改、删除与复制的操作:
  • (2)dd:删除光标所在行;
  • (3)yy:复制光标所在行;
  • (10)p:将数据放置在当前行之下;(如果之前操作的数据是字符,意思为:将数据放置在光标之后)
  • (11)P:将数据放置在当前行之上。(如果之前操作的数据是字符,意思为:将数据放置在光标之前)
  • 4、存储和退出
  • (1):w:将文件存入/写入磁盘;
  • (2):q:退出vi 编辑器;
  • (3):wq:将文件存入磁盘并退出vi 编辑器。
  • 注意:可以在以上命令之后加上!,!是强制执行的意思。

tar

  • -c :新建打包文件
  • -t :查看打包文件的内容含有哪些文件名
  • -x :解打包或解压缩的功能
  • -C(大写)指定解压的目录,注意-c,-t,-x不能同时出现在同一条命令
  •  -j :通过bzip2的支持进行压缩/解压缩
  • -z :通过gzip的支持进行压缩/解压缩
  • -v :在压缩/解压缩过程中,将正在处理的文件名显示出来
  • -f filename :filename为要处理的文件
  • -C dir :指定压缩/解压缩的目录dir

压缩:tar -jcv -f filename.tar.bz2 要被处理的文件或目录名称

查询:tar -jtv -f filename.tar.bz2

解压:tar -jxv -f filename.tar.bz2 -C 欲解压缩的目录

less

  • -i 忽略搜索时的大小写
  • /字符串:向下搜索“字符串”的功能  再按n跳转下一个,按N跳转上一个
  • ?字符串:向上搜索“字符串”的功能
  • 回车下滚动一行
  • 空格滚动一页
  • u 向前滚动半页
  • Q 退出less 命令

xargs:把步骤1的内容作为步骤2的命令的选项参数拼接起来

  • echo "/" | xargs ls -l   = ls -l /

网络

netstat:查看网络端口

  • -t:监控tcp协议的进程
  • -l:listening
  • -n:显示端口号信息
  • -p:显示进程的PID

ifconfig:查看系统中所有网卡的IP、MAC信息

  • up 启动指定网络设备/网卡。
  • down 关闭指定网络设备/网卡。

ping

  • -c:次数

curl 

  • -G = -X GET 发送get请求
  • -d 指定请求数据 有-d指定为post请求
  • -X POST 发送post请求
  • -o 文件名 保存响应内容到文件
  • -v 显示整个过程
  • -s 不输出错误和进度信息
  • -x 设置代理

性能

top

查看系统资源,相当于任务管理器,没隔三秒更新一次,q键退出

free:查看内存信息。

  • -m:指的是以MB的格式显示。

ps

  • –ef:查看系统进程;
  • -a :不与terminal有关的所有进程
  • -u :有效用户的相关进程
  • -x :一般与a参数一起使用,可列出较完整的信息

kill:杀死正在运行的进程

  • kill -9 

no hub: 不挂起

yum -y

uname -r

Linux执行返回码:https://www.cnblogs.com/apple2016/p/6139106.html

bash

练习网址:https://www.nowcoder.com/activity/oj

变量

  • hostname="zcc"   # 创建变量  
  • echo “$hostname”   # 打印变量
  • unset hostname   # 删除变量
  • greeting = "hi, ""$hostname"! 字符串拼接

组数

  • 定义:arry_name=(1,2,3)
  • 取值:value = ${arry_name[2]}   ${arry_name[*]}、${arry_name[@]} # 取所有值
  • 赋值:arry_name[2] = 4

控制语句

  • if
  • 讯享网a = 3, b = 2 $ if [ $a -eq $b ]; then echo "equal"; elif [ $a -lt $b ]; then ehco "small"; elif [ $a -gt $b ]; then echo "big"; fi
  • for 
  • # 文件格式 for loop in 1 2 3 4 5 do     echo "hello" done # 命令行格式 for i in $(cat a.txt); do echo "$i"; done  # 空白行不输出, 空格后面的会输出到下一行 while while (( $int <= 5 )) do      echo $int     let "int++" done while read line; do echo $line; done<aa.txt  # 输出与原文本一致

read 从文本或终端读取整行输入,每行末尾的换行不读入

  • read a  # 输入变量a的值
  • 讯享网read a b c  1 2 3  # a=1 b=2 c=3

参数 

  • $1 $2  # 第一个参数 第二个参数
  • $0 # 文件名
  • $#  # 参数数量
  • $*  # 所有参数
  • $?  # 返回值

运算符

  • 加法:`expr $a + $b`
  • 减法:`expr $a - $b`
  • 乘法:`expr $a \* $b`
  • 除法:`expr $a / $b`
  • 取余:`expr $a % $b`
  • -eq ==
  • -ne !=
  • -gt >
  • -lt <
  • -ge >=
  • -le <=
小讯
上一篇 2025-01-06 11:03
下一篇 2025-04-01 18:41

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/63659.html