linux 常用命令

ls ls -l ls -la ls -li ls -h
mkdir mkdir -P

cat cat -n [显示行号]
touch
vi esc i / :wq dd u
vim
pwd
df -h
cd .. cd /usr cd ./ cd ~
tar -xzvf filename.tar.gz -C /usr/directory
useradd username
groupadd
chmod 777 filename
chmod u-x g+x o-r
chown hadoop filename
uname -a

mv filenme newFilename
cp file newfilename

which java
where java

rm -fr file
rmdir directory
clear
tail -f
less
more
head
echo
export
Tab 代码补全
上方向键 历史命令
ctrl + c
set
alias
unalias 别名 清除别名
unalias -a 清除 所有别名

history -c -w

重定向
grep egrep fgrep

read -p "提示语 " 变量
read -t 时间second
read -s 保密模式

cat ab.txt | while read line
do
echo "every name : $line"
done

expr 计算 注意要有空格
expr match "str" "regex"
expr substr "str" index count
expr index "str" "substr"
expr length "str"

tmux tmux new -s roclinux ctrl +b c 0
shopt expand_alias
--login

xargs excute argument 从标准输入中读取内容,并将此内容传递给它要协助的命令,并作为哪个命令的参数来执行

cat ab.txt |xargs -E "korea" echo
date
time 计算 命令执行时间 time -v ls
sleep 5s 6m 7h 5d date; sleep 4s ;date
sleep 0.003s

file -f filename 查看文件内容
file -i filename 查看全码
file -b filename 隐藏文件名
file -F “=》” filename
file -L filename 查看软链接

ln source.txt hardsource.txt 不允许链接到目录 不能跨文件系统
ln -s source.txt softsource.txt

ln -f 强制
ln -n 把链接目录 当做文件看

find . 当前目录 -name [pattern] -type f d l b c p s [pattern] -regex '.* '

find . -perm 663 按权限搜索
find -exec args {} ;
find . -type f -size +40m
find , -type f -a -size +30k and -o or

find . -regex "./e .avi .[0-9]+$" 正则 以 . 开始 + 1-n * 0-n ? 0-1
w s d

tree 列出 树状文件 目录

du disk usage 展示磁盘用量统计信息 侧重文件和文件夹的磁盘占用方面

du -sh summarize human
du -ch total human
du -ah .
du -sh *|sort -nr
du -h ab.txt

gzip hot.avi 压缩文件 会 删除源文件,若保留源文件 gzip -c hot.avi
gzip -d hot.avi.gz 解压文件

tar -zxvf filename.tar.gz -C /usr/local/
-x 进行拆包
-z 使用gzip 压缩或者解压缩
-v view 直播解压过程
-f file 指定 文件

tar -czvf finame.tar.gz directory 打包 压缩
-c 打包

tar -ztvf file.tar.gz 只是看看 文件 t 列出文件中内容

gzip -3 erro.jpg

对于 bzip2 压缩包
tar -xjvf fina.tar.bz2 解压

tar -cjvf fina.tar.bz2 fina/ 压缩

bzip2 error.jpg 压缩 会删除源文件

zip -r zdata.zip note.txt soft/
unzip -d newzip/ zdata.zip

unzip -v zdata.zip 只是看看

zip zdata.zip -d mynote.txt 删除压缩包中的文件

dd device driver
dd if=/dev/sda of=/root/sda.img 备份
dd if=/root/sda.img of=/dev/sda 恢复
dd if=/dev/sda |gzip >/root/sda.img.gz
dd if=/dev/sda |bzip2 > disk.img.bz2

dd if=/dev/sda2 of=/root/sda.img
dd if=/dev/mem of=/root/mem.img count=1 bs=1440k
dd if=/dev/zero if=/dev/null if=/dev/urandom

nc -l port
ps 查看进程
ifconfig 查看网络
kill 进程号
shutdown 40
echo -e " " 设别 转义字符
echo -n ' ' 去掉 echo 末尾的换行符
echo -e "\033[41;36m hello world \033[0m" \033 \e \E 等价

grep 搜索 提取
grep --color “leo” /etc/password
grep -v "leo" /etc/password

grep -A 1 leo /etc/password after
grep -B 1 leo /etc/password before
grep -C rand
grep -i "leo" ./etc 不区分大小写
grep -l "fires" *.txt 处理多文件 存在

grep -L "fires" *.txt 不存在

grep "bash$" "^leo" /ect/ 处理正则
grep -w "bash" /etc 处理词
grep -c "root" /etc/pad

sed stream editor 流编辑器 是一个面向 行处理的工具,它以 行 为处理单位,针对每一行进行处理,处理后的结果会输出到标准输出(STDOUT),sed 不会修改 被读取的文件
而是将 原内容 或修改后的内容输出到标准输出中。工作原理,每一次处理一行内容,处理时,sed会把要处理的行存储在缓冲区中,接着用sed 命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着 处理下一行,这样不断重复,直到文件末尾,这个缓冲区被称为 ”模式空间“

sed '/2/d' roc.txt
sed -n '/4/p' roc.txt -n 警告sed ,只输出 明确要输出的行
/d 表示删除行 ; /p 打印该行 ; /r 读取指定文件的内容 /w 写入指定文件 /a 在下面插入新行新内容 /g 替换 s/ 删除

sed 's/..//' test 删除每一行的前两个字符

sed 's/B.*/&2008/' mysed.txt 追加& s/ /

echo "helo world " |sed 's/ (helo) .*/world \1/'
world helo

sed -e 's/Beijing/london/g' -e '/Beijing/d' mysed.txt

sed '/2005/r ins.txt' mysed.txt 匹配 mysed.txt 2005 后,插入ins.txt 到mysed.txt

sed '/2004/i\china' mysed.txt 匹配2004 前一行 插入 china i
sed '/2004/a\china' mysed.txt 匹配 2004 后一行插入 china a

sed '/200[4-6]/w new.txt' mysed.txt,将指定行写入到特定文件中

sed 'y /ei/ie' mysed.txt y就是按照字符顺序,实现前后的替换 y/source /dist 而 s的语法是
s/regexp/replacement

who |cut -b 3 -b 以字节 为单位提取
who |cut 3-5,8
cut -c 以字符为单位提取内容
cut -c 3 roc.txt
cut -d : -f 1,3-5,7 -d 以什么为间隔, -f filed 要提取的域

wc 计算字数
wc -c roc.txt 以字节 byte
wc -m ro.txt 以字符char 来计数
wc -l ro.txt 以 行line
wc -w ro.txt 以 词 word
wc -L ro.txt 可以显示一个文件中最长行的长度
wc rot.txt 显示行数 词数 字节数 文件名称

split 拆分文件
split -b 400M toykohot.avi -b 指定每个拆分文件的大小 -d 指定数字
split -b -C -l 要切割的文件 输出的文件名前缀 -a
md5sum hot.avi md5 验证文件
sha1 hot.avi

paste 拼接文件
paste ro.txt roc.txt
paste -d '' p3.txt p2.txt p1.txt -d 使用字符 拼接
paste -s -d '
' p3.txt p2.txt p1.txt -s 以每个文件自身为一个处理单元

sort 排序 将文件的每一行 作为一个单元进行排序,其规则是从行首 字符向后,依次 按 ASCII码值前后顺序进行比较,最后将他们按升序输出 默认是 stdout 输出

sort seq.txt 默认将每行 ASCII码值怕徐

sort -u seq.txt -u 消除重复

sort -u -r seq.txt -r颠倒顺序,逆序 降序

sort -r number.txt -o number.txt -o将排序结果保存到文件 或者重写源文件

sort -n number.txt -n number 按照数值排序

sort -n -k 2 -t : fruit.txt -k 指定要针对的那一列进行排序 , -t 指定间隔符

-f 小写字母转大写
-c 检查文件是否排序 ,乱序则输出 第一行
-C 检查文件是否排序,乱序则不输出
-M 按月份排序
-b 忽略空白
sort -n -t ; -k 2 -k 3 force.txt ,两个排序 列,有先后,都是升序
sort -n -t ' ' -k 3r -k 2 faco.txt ,两个 排序 , 3降序,然后相同的按 2 升序

sort -t ' ' -k 1.2 facebook.txt 对第一列 的第二个字母开始到本行的最后一个字符为止的字符串进行排序

awk 其实是一门编程语言 ,非常适合用来处理文本 类 数据,数据可以来自标准输入,外部文件,或其他命令的输出,,awk同事支持正则表达式和用户自定义的函数
行 record , field 列
awk '{print $0}' student.txt
awk '{print $1 ,$3}' fx.txt
awk 'BEGIN {print "" } {print ""} END {print ""}' student.txt

awk '{ print $1+$3+$6}' stu.txt
awk 'BEGIN {print "" } $3 ~ /beijing/ {print $1,$3,$2+$5 } END {print ""}' stud.txt 帅选

awk 'Pattern {Action}' filename ,Pattern 和Action 都是可选的,但是必须有一个,action 如果被指定 {} 则不做任何动作,也没有输出,

awk 'N/R%2==0 {next} {print NR,$0}' INP.txt NR表示当前记录的行号 ,用‘NR 是否嫩被2整除 的方法可以看出当前是奇数行还是偶数行, 偶数 不输出 进行下一行, 奇数 输出当前行

awk 'NR%3!=0 {T={T " "$0);next} {print T,$0; T=" "}' in.txt 其实是一个 if do else done
把 T 作为一个变量 ,中间存在赋值 操作

awk 'BEGIN {T=" "} /worktime/ {print T;T=$0; next}{T=T" "$0} END{print T}' input.txt

awk '{print $0}' input.txt inp.txt

awk 'NR==FNR &&FNR==1 {print FILENAME, $0} NR>FNR &&FNR==8{print FILENAME ,$0}' INT.txt in.txt

awk 'ARGIND==1{...}ARGIND==2{...}ARGIND==3{...}...' file1 file2 file3 ...

awk 'BEGIN {OFS=FS=":" NR==FNR {a[$1]=$2} NR>FNR{$2=a[$1];print}' shadow passwd
OFS 输出字段分隔符 FS 字段分隔符

合并两文件并求和
awk '{ for(i=1;i<=NF;i++) a[i]=$i; getline<"1.txt"; for(i=1;i<=NF;i++) printf a[i]+$i" ";
printf "\n"}' 2.txt

外部调用 getline 引用外部数据 ,system 调用shell 中的命令

awk '{getline;print}' test getline 左右没有 < | ,getline 是对当前打开的文件操作,表示读取行的下一行数据,并把读取到的数据赋值给$0,同时更新 NF NR FNR

awk '{print $0; while ((getline <"1.txt") >0)print$0)' test

awk 'BEGIN {system("ls -al")' awk 无法直接将脚本中的数据直接输出给 shell命令,反之 依然

ifconfig |awk '/eth/ {inter=$1;getline;sub(/inetaddr:/,"");print inter,$1}'

查看 TCP 连接状态
netstat -nat |awk '{print $6}' |sort|uniq -c |sort -rn

查找请求Shuffle排名 前5名的ip
netstat -anlp |grep 80|grep tcp|awk '{print $5}'|awk -F : '{print $1 }' |sort|
uniq -c |sort -nr|head -n 5

锁定tme——wait 连接较多的源 ip
netstat -n |grep TIME_WAIT |awk '{print $5}'|awk -F :'{print $1}'|sort|
uniq -c |sort -nr|head -n 5

使用tcpdump 嗅探 80 端口的访问

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,324评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,303评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,192评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,555评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,569评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,566评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,927评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,583评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,827评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,590评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,669评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,365评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,941评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,928评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,159评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,880评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,399评论 2 342

推荐阅读更多精彩内容