Linux常用命令2

Linux命令详解:-eq、-ne、-gt、-lt、-ge、-le等运算符在Linux中用于数值比较。
例如,[$a-eq$b]可用于检查$a和$b是否相等。
可以使用-b、-c、-d、-f、-g、-k、-p和-u等运算符来检测文件属性。
例如,[-b$file]检查文件是否是块设备文件。
使用运算符-r、-w、-x检查文件权限,使用[-r$file]检查文件是否可读。
使用-s运算符检查文件大小,使用[-s$file]检查文件是否不为空。
使用-e运算符检查文件或目录是否存在,使用[-e$file]检查文件是否有效。
使用-z判断变量值是否为空,使用-n判断变量值是否为空。
为了分析nginxaccess.log文件,统计日志中每个HTTP请求的命中次数并列出前10个,可以使用以下命令:cataccess.log|awk-F\"'{print$2}'|sort|uniq-c|sort-rn|head-10要查看nginx日志中特定日期的执行状态,可以运行以下命令:grep-E'2021-08-20'run_checkodps.log|awk-F""'{print$1,$2}'>>替换字符串time.log可以通过sed命令进行操作,例如要将字符串“A”更改为“B”,可以使用以下命令:sed-i's/A/B/g'test.txt在特定位置插入文本,例如,在字符串“22”之后插入“33”:sed-i'/22/a\33'test.txt在“22”之前插入文本,例如在文件“haha.txt”中:sed-i'/22/i\33'haha.txt替换字符串中的特殊字符:sed-is/\'//g1kw.csv删除特定字符:sed-is/\(//g1kw.csvsed-est/\)//g1kw.csvsed-est/\,//g8kw.csv使用echo和sed命令操作字符串:echo""|sed-e's/A/B/g'-e's/a/b/g'反转文件内容:sed-n'{1!G;h;$p}'测试添加模糊匹配词后加双引号:echo"Thecatsleepsinhisha"t"|sed's/.at/"&"/g'选择特定行:sed-n'2p'显示内存使用百分比:free|sed-n'2p'|gawk'x=int(($3/$2)*100){printx}'|sed's/$/%/'根据端口号查找进程ID:lsof-i:$port分割文件:tr'@''忽略文件第一行:awk'NR>4'分割文件根据路径查看文件内容:catb.txt|cut-d'/'-f3|sort|uniq-c|sort-nr使用netstat命令显示活动连接:netstat-an|grepESTABLISHED|awk'{print$5}'|cut-d':'-f1|sort-n|uniq-c|sort-nr粘贴设置:setpaste撤消粘贴设置:setnopaste根据进程ID查找端口号:lsof-je|grepp根据进程查找端口号:lsof-i:port根据进程ID查找端口号:netstat-nap|greppid根据端口号查找进程:netstat-nap|grepport将代码本地提交到远程服务器。
插入并提交MR:gitpushoriginHEAD:refs/for/***将最后三个提交合并为一个提交:gitrebase-iHEAD~3使用rsync进行文件复制和同步:详细配置rsync-董大轩-展示博客园配置路径的风格:exportPS1='[\u@\h$PWD]$'理解七层协议:ISO/OSI、应用层、表示层、会话层、传输层、网络层、数据链路层、物理层文件解压:tar-czvf***.tar.gz***tar-czvf***。
-文件解压cjvf***.tar.bz2:tar-xzvf***.tar。
gztar-xjvf***.tar.bz2使用正则表达式匹配括号内容:匹配括号\((.*?)\)内容判断文件是否在两天内:while[1];dofile='/tmp/test.csv'file_time=$(ls-l--full-time$file|awk'{print$6}');check_file_time=$(date-d"-2day"+"%Y-%m-%d");[-e$file]&&[$(echo$file_time$check_file_time|awk'$1>$2{print1}')-eq1]]&&break;sleep10;done使用pidstat检查进程磁盘使用情况:pidstat-dCheck进程磁盘使用情况(特定进程):pidstat-d-p758231显示文件行数:wc-ltemp。
csvKeep小数:"%.0f"%a批量终止进程:ps-ef|grepnb|grep-vtcp|grep-vgrep|awk'{print$2}'|xargskill检查远程目录是否存在:sshadmin@$iptest-e$local_pathVim模式下的基本操作:dd删除、剪切、p粘贴shell循环操作示例:foriin{1..60};dosudocpcontrol.bakcontrol&&echo"xx"&&sleep30;done&显示ELF文件信息:readelf-l/path/***.so使用rsync进行文件传输:rsync-tz--max-size=20madmin@***:/local_path/remote_path显示时区:zdump命令用于显示复制操作的当前时间并更新指定的区域名称:cp-ur添加用户组:groupaddtest创建新用户并指定组:useradd-gtestphpq编辑用户组成员:usermod-Ggroupnameusername将用户添加到组:gpasswd-aadmindocker&&newgrpdocker&&dockerimages显示系统硬件信息:ShowCPU型号显示​​内存使用情况显示内核版本显示磁盘信息显示CPU核数判断磁盘类型(SSD还是HDD)判断用户是否为root检查系统架构,检查远程服务端口是否正常。
检查当前进程。
检查父目录。
Python获取命令行参数。
价值。
$0表示当前脚本的名称。
$n表示第n个。
参数值$*代表所有参数$#代表参数个数$$代表当前进程ID号$!$?表示最后执行的命令的状态码$-表示当前itll选项$@表示所有参数,但用作数组。
复制文件到容器:dockercp./local_file$container_id:$container_path使用pssh批量执行命令和文件传输并行执行命令和文件复制快速返回命令历史记录使用Ctrl+r查看僵尸进程:ps-al|gawk'{print$2,$4}'|grepZ