linux 的基础命令
1 ls查看文件或目录【功能说明】:查看文件或目录
【语法格式】:ls参数 指定文件或目录
【选项参数】:
参数参数说明 列子
-l查看文件或目录的详细信息 ls -l /root
-h以1024为进制显示文件大小ls -lh /root
-t按照修改时间排序,默认由近到远 ls -t /root
-a显示所有文件/目录,包括以
‘.’ 开头的隐藏文件。 ls -a /root
ls 例子
#ls/root/
oldboy
-l参数实例
# ls-l/root/
total 4
drwxr-xr-x. 3 root root 4096 Jun 29 09:44 oldboy
-h参数实例
# ls-lh/root/
total 4.0K
drwxr-xr-x. 3 root root 4.0K Jun 29 09:44 oldboy
-t 参数实例
# ls -t /root/oldboy/
he.txthe
# ls /root/oldboy/
hehe.txt
-a参数
# ls -a /root
. 13 .bash_logout .bashrc
..2.bash_history.bash_profile.viminfo
2 mkdir创建目录
【功能说明】:创建目录
【语法格式】:mkdir参数 要创建路径下的目录
【选项参数】:
参数参数说明 列子
-p递归创建 mkdir -p /root/1/2/3/4
mkdir列子
# ls
oldboy
# mkdir /root/he
# ls
heoldboy
# ls /root
1
# mkdir /root/2 /root/3
# ls
# ls /root
123
-p 参数实例
# mkdir -p /root/1/2/3/4
# tree /root
/root
-- 1-- 2
-- 3-- 4
4 directories, 0 files
#
创建多层目录
# mkdir oldboy/{10086,10000}/data -p
# tree
.
└── oldboy
├── 10000
│ └── data
└── 10086
└── data
5 directories, 0 files
#
3 touch创建文件
【功能说明】:创建文件
【语法格式】:touch参数路径下创建文件
【选项参数】:
参数参数说明 列子
# touch/root/1/he.txt
# ls 1
2he.txt
touch 创建多个文档
# ls
# touch /root/file{1..10}.txt
# ls
file10.txtfile2.txtfile4.txtfile6.txtfile8.txt
file1.txt file3.txtfile5.txtfile7.txtfile9.txt
4 awk***
【功能说明】:awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。
awk有3个不同版本: awk、nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本
awk其名称得自于它的创始人 Alfred Aho 、Peter Weinberger 和 Brian Kernighan 姓氏的首个字母。实际上 AWK 的确拥有自己的语言: AWK 程序设计语言 , 三位创建者已将它正式定义为“样式扫描和处理语言”。它允许您创建简短的程序,这些程序读取输入文件、为数据排序、处理数据、对输入执行计算以及生成报表,还有无数其他的功能。
【语法格式】:
【选项参数】:
参数参数说明 列子
4.1 awk 的基本用法
# cat install
directoy
install
echo
sysconfig
# awk 'NR==2' /root/install 显示第几行
install
# awk 'NR==2,NR==4' /root/install ] 显示第几行到第几行
install
echo
sysconfig
5 sed***
【功能说明】:流编辑器 实现对文件的增、删、改、替换、查看
【语法格式】: sed -n ‘2,3p’ /root/skip.txt
命令参数第几行到第几行在×××
【选项参数】:
参数参数说明 列子
-n取消默认输出sed-n‘3p’/root/skip.txt
-i修改文件的内容
插入文本到指定行前 sed-i‘s#find#grep#g’
功能说明列子
-n取消默认输出sed-n‘3p’/root/skip.txt
-i修改文件的内容
插入文本到指定行前 sed-i‘s#find#grep#g’
内部参数 说明
a 表示在选定的那行,后面插入一行或多行文本。
i 表示在选定的那行,前面插入一行或多行文本。
d 表示匹配行的文本【进行删除】
S###g S表示替换,g全局 -----全局替换
5.1-n 参数
# sed -n '3p' /root/skip.txt
grep
# sed -n '2,3p' /root/skip.txt
sed
grep
5.2sed 替换格式sed ‘s###g’路径
# cat /root/skip.txt
awk
sed
grep
head
tail
# sed 's#grep#find#g'/root/skip.txt -i
# cat /root/skip.txt
awk
sed
find
head
tail
# sed -n 's#skip#oldboy#gp' install p 表示把替换内容的哪一行显示在桌面
install oldboy directoy
# cat install
install skip directoy
#
5.3sed不显示选中内容行
# sed '/find/d' /root/skip.txt
awk
sed
head
tail
5.4在指定行的前面/后面添加内容
# seq 20 23 >install.txt
# cat install.txt
20
21
22
23
# sed -i '2a install' install.txt 2a 表示在第二行后面追加内容
# cat install.txt
20
21
install
22
23
#
# sed -i '2i install' install.txt 2i 表示在第二行的前面追加内容
# cat install.txt
20
install
21
22
23
24
25
#
5.5sed删除功能的用法
# sed -i '/103/d' install 删除包含103这个字符的行
# cat install
100
101
102
104
105
# cat test.txt
test liyao
oldboy
oldgir
# sed '2d' test.txt 删除第二行
test liyao
oldgir
#
# sed '1,+2d' install删除文件第一行和后面的2行(1,+2d)
103
104
105
# cat install
100
101
102
103
104
105
# sed '1~2d' install 显示等差数列1,3,5行,差为2,自己指定的
101
103
105
# cat install
100
101
102
103
104
105
# sed -i '2,$d' install 删除第二行后面所有的内容包括第二行
# cat install
100
#
# sed -i 'i 99' install 不加指定行 则视为每一行
# cat install
99
100
99
101
99
102
1.1 在任何时候都不能轻易的使用>
# cat /directory/program.txt
1
3
5
7
9
# sed -i '/5/d' > /directory/program.txt
sed: no input files
# cat /directory/program.txt
#
6 grep**
【功能说明】:过滤、在文件中找东西
【语法格式】:grep -v “10” /root
命令参数 找什么 在×××
【选项参数】:
参数参数说明 列子
-v排除选中的哪一行 grep-v“3”/root/skip.txt
-A数字 显示选中的哪一行接下来的N行grep-A1 “3”/root/skip.txt
-B数字 显示选中的哪一行前面的N行 grep-B1 “3”/root/skip.txt
-C数字 显示选中哪一行前后各N行 grep-C1 “3”/root/skip.txt
-o只输出匹配行的内容 grep -o "oldboy" test.txt
-w只匹配过滤的单词 grep -w "oldgir" test.txt
-E| -E能代替前面的斜线
color=auto为过滤的字符串加颜色
-n显示匹配行及行号
-i不区分大小写进行匹配
-c统计匹配的行数 grep -c "oldboy" test.txt
6.1 -v参数
# grep -v "3" /root/skip.txt
1
2
4
5
6.2-A -B -C 参数
# grep -A1 "3" /root/skip.txt
3
4
# grep -B1 "3" /root/skip.txt
2
3
# grep -C1 "3" /root/skip.txt
2
3
4
6.3 -o -w -c -i -n
# cat test.txt
test liyao
oldboy
oldgir
# grep -o "oldboy" test.txt只输出过滤的字符
oldboy
# grep -w "oldgir" test.txt
oldgir
# grep -w "olgir" test.txt这个必须是文件内一个完整的单词
# grep -c "oldboy" test.txt
1
#
# cat test.txt
test liyao
oldboy
oldgir
# grep -n "old" test.txt
2:oldboy
3:oldgir
#
7 find***
【功能说明】:查找目录下的文件或目录,任何位于参数前的字符串,都将视为想要查找的目录名。不设置参数时他将查找当前目录下的子目录及文件,并显示所有信息。
【语法格式】:find/root/ -type f -name “*.txt”
命令 ××× 找什么 文件 找什么名字
【选项参数】:
参数参数说明 列子
-type 要查找的类型f 文件 d 目录
-name 要查找的名字一般“”在里面输入要查找的东西。
-o或者-name “” -o -name “”
7.1 用find查找删除多个文件/目录、
# touch install{1..20}.txt
# ls
install10.txtinstall15.txtinstall1.txt install5.txt
install11.txtinstall16.txtinstall20.txtinstall6.txt
install12.txtinstall17.txtinstall2.txt install7.txt
install13.txtinstall18.txtinstall3.txt install8.txt
install14.txtinstall19.txtinstall4.txt install9.txt
# find /root/ -type f -name "*.txt"|xargs rm -f 以后缀查找通过管道删除
# ls
#
# touch install{1..20} /root
# ls
install1 install13install17install20install6
install10install14install18install3 install7
install11install15install19install4 install8
install12install16install2 install5 install9
# find ./ -name "inst" |xargs rm -f 删除 包含前面内容的文档/目录
# ls
#
# find -name "find7.txt" -o -name "find9.txt"
./oldboy/10086/data/find9.txt
./oldboy/10086/data/find7.txt
./oldboy/10000/data/find9.txt
./oldboy/10000/data/find7.txt
#
8seq
【功能说明】:打印数字,循环打印
【语法格式】:seq-s “0” 3
命令 参数 指定分隔符 数量
【选项参数】:
参数参数说明 列子
-s “” 指定分隔符 seq -s “0” 3
-w输出相同的位数以最长的那个为模板。 seq -w 10
-f“find%2g” %后面跟最大位数不足显示为空格。 seq-f“find%2g” 10
8.1 -s 参数
# seq -s "0" 5
102030405
8.2-w参数 -w -s组合使用
# seq -w 10 以最大的为模板不够的以0补充
01
02
03
04
05
06
07
08
09
10
# seq -ws " " 10 指定分割符号
01 02 03 04 05 06 07 08 09 10
8.3seq 的几种用法
# seq 3 【从1开始默认增长量为1】
1
2
3
# seq 3 5 【从3开始默认增长量为1】
3
4
5
# seq 1 3 10 【从1开始增长量为3】
1
4
7
10
9head头
【功能说明】:头 显示文件的前几行,默认显示文件前10 行。
【语法格式】:head-n2oldboy
命令参数 文件名
【选项参数】:
参数参数说明 列子
-n数字显示文件的前几行默认显示文件的前10行 【n可以省略直接加 -数字】head -n2 oldboy
-n 参数
# head -2 oldboy
awk
find
head 接管道 cat显示
# head -3 oldboy | cat -n
1awk
2find
3grep
# cat -n oldboy | head -3
1awk
2find
3grep
10tail 尾巴
【功能说明】:显示文件的后面几行,默认显示10 行。
【语法格式】:
【选项参数】:
参数参数说明 列子
-n 接数字显示文件的后N行,n可以省略直接 -数字 tail-n3oldboy
-c 接数字输出文件尾部开始的N个字节。tail-c 10 oldboy
tail 用法
# tail -2 oldboy
sed
echo
# tail -2 oldboy | cat -n
1sed
2echo
# cat -n oldboy | tail -2
6sed
7echo
-c 参数
# tail -c 10 oldboy
sed
echo
11cat
【功能说明】:显示文件的内容
【语法格式】:
【选项参数】:
参数参数说明 列子
-n带行号显示 cat-noldboy
-b带行号显示,空行不标注行号。cat-boldboy
-s当遇到2行或以上的空行合并成1行。 cat-soldboy
cat-n-b-s 参数列子
# cat -n oldboy
1head -n
2tail -n -c
3
4
5dirctory
# cat -b oldboy
1head -n
2tail -n -c
3dirctory
# cat -sb oldboy
1head -n
2tail -n -c
3dirctory
12echo
【功能说明】:输出指定的字符串或变量
【语法格式】:echo“file”>>oldboy
命令 输出内容 写入地址
【选项参数】:
参数参数说明 列子
-n不换行输入 echo-n“oldger” ; echo“oldboy”
-e使用制表符 echo-ne “oldger\t” ; echo “oldboy”
echo echo {a..z} 生成A到Z的序列到屏幕
echo 命令应用
# echo "oldgre" >> oldboy表示把内容追加到文件结尾
# cat oldboy
head -n
tail -n -c
dirctory
oldgre
# echo "man" > oldboy 把源文件内容覆盖掉
# cat oldboy
man
# echo "oldger" 显示到桌面
oldger
#
-n -e 参数
# echo -n "oldger" ; echo "oldboy"
oldgeroldboy
# echo -ne "oldger\t" ; echo "oldboy" 【\t为tab】
oldgeroldboy
用echo写入多行文本
# touch install
# ls
install
# echo "directoy
install
echo
sysconfig">>install
# cat install
directoy
install
echo
sysconfig
#
echo生成序列
# echo {1..10}
1 2 3 4 5 6 7 8 9 10
# echo {a..j}
a b c d e f g h i j
#
13cd
【功能说明】:进入目录
【语法格式】:cd /root
命令 要进入哪里
【选项参数】:
参数参数说明
cd . 切换到当前目录,相当于没动
cd .. 切换到当前目录的上级目录
cd ../.. 返回上两级目录,类推
cd ~ 进入用户主目录
cd - 返回刚才所在的目录
14rm删除文件/目录
【功能说明】:删除文件或目录
【语法格式】:rm -f /root/oldboy
命令参数要删除的内容
【选项参数】:
参数参数说明 列子
-f强制删除文档(不提示)
-r删除目录
-fr 强制删除目录
rm 用法
# ls
catfindsed
# rm /root/ -rf 当这样用号时,表示root目录下的所有文件/目录但不包括
# ls -a 隐藏文件/目录
. .bash_history.bash_profile.viminfo
...bash_logout .bashrc
15 mv 剪切
【功能说明】:用来剪切目录或给文件/目录更名
【语法格式】:
【选项参数】:
参数参数说明 列子
# mv /data /root
# ls /root
datatest.txt
# ls /root/data/
heoldboy1.txtoldboy.txt
#
16pwd 显示当前所在位置
【功能说明】:
【语法格式】:
【选项参数】:
参数参数说明 列子
# cd /root/data/he/
# pwd
/root/data/he 《=== 当前工作路径
#
17 xargs
【功能说明】:分组
【语法格式】:
【选项参数】:
参数参数说明 列子
分组
# cat m.txt
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20
# xargs -n5 < m.txt
01 02 03 04 05
06 07 08 09 10
11 12 13 14 15
16 17 18 19 20
#
18 vi vim编辑文本
【功能说明】:linux里面用来编辑文本的工具
【语法格式】:
【选项参数】:
参数参数说明 列子
i 进入编辑模式
:wq 保存并退出
Esc 键 退出
:q退出不保存
:q! 强制退出不保存
-o编辑多个文本
19cp复制
【功能说明】:复制文件或目录,默认复制文件。
【语法格式】:
【选项参数】:
参数参数说明 列子
# ls /root/data/
heoldboy1.txtoldboy.txt
# cp /root/data/oldboy.txt./
cp: overwrite `./oldboy.txt'? y
# \cp /root/data/oldboy.txt ./不提示是否覆盖方法慎用
# /bin/cp /root/data/oldboy.txt./
#
[*]history 查看已使用过的命令
页:
[1]