Linux命令总结复习(不管路走了多远,错了就返回)
linux命令差不多2000多个,常用的120个左右,要求自己掌握150多个
Whoami 查看当前登录用户名
Hostname 查看主机名,也可以更改主机名 如:hostname wang 但是这样改是临时的
Mkdir (make directory)创建目录 (win 下面 d:\data)
#表示root用户 $普通用户
Pwd 查看当前所在目录
Tree + 目录 查看目录结构
Ls (list) 查看目录
Ls -d(directory) /data 查看指定目录
Cd (change directory) 切换目录
Touch 创建文件或者更改文件的时间戳,如果不存在就创建,存在就更改访问时间,不会覆盖
Ctrl + t 清除屏幕快捷键
Ls -l +文件名 查看文件属性
Vi/vim 文本编辑器(具体文本的操作命令后面待续)
Cat + 文件 查看文件内容
Cat -n wang 查看文件内容加行号
Echo 输出打印 如 echo “i am student” >> wang 把 i am student 放入wang 文件中
符号
>> 追求重定向(把内容追加到文件尾)
> 重定向(会覆盖里面的内容,原内容会被删掉)
> wang 会清空wang文件里的内容
.. 当前目录的上级目录
. 当前目录
Cat >>wang <<EOF
123
34324
4324
EOF
CP (COPY) + 源文件 + 目的目录
如:cp wang /tmp/ 将wang文件拷贝到/tmp/文件下(不带参数拷贝的是文件)
Cp +参数(-r拷贝目录 -p 保持属性 -a(相当于参数rdp的集合))
Mv /data /tmp/ 剪切目录 (将/data移到/tmp/ 下) 没有参数
Rm 删除文件跟目录命令 如: rm wang;
Rm -f +文件名 强制删除不需要提示
rm -r +目录 删除目录
Rmdir 删除空目录
相对路径:从当前目录开始
绝对路径:从根目录开始
CRT :Shift + insert 粘贴快捷键
三剑客命令(很重要)
Grep :过滤字符串 过滤出或者过滤到
参数:grep - v(排除)
三剑客老二
Sed:文件的增删改查
Sed -i ‘s#old#kid#g’ wang.txt (把wang.txt 所有内容为old的改为kid)
s表示查找并且替换
g表示全局
#为分隔符
-i 改变内容 如果不加的话 只会显示而不会真正改变wang.txt里面的内容
例如:
练习1
目标:输出wang文件里面的除SIQI外的内容
准备
Cat > wang <<EOF
>WANG
>SHUANGXI
>SIQI
>EOF
Grep -v SIQI wang (第一种方法)
Head: 查看文件内容前几行 -n 指定查看多少行,不指定问默认10行
Tail :查看文件尾部的多少行 -n 指定查看多少行,不指定问默认10行
Head -2 wang(查看wang文件内容的前两行)第二种方法
练习二
No such file or directory 没有这样的文件或目录
Command not found 命令没有发现
用一条指令创建old目录以及old目录下的kid目录
Mkdir -p old/kid 递归创建目录,创建目录以及子目录)
练习三
已知/tmp 目录下以及存在test.txt文件,如何执行命令才能把/mnt/test.txt拷贝到/tmp下覆盖掉/tmp/test.txt 而让linux 系统不提示是否覆盖(root权限下)
重复以下命令
/bin/cp 1 /tmp/1
/bin/cp 1 /tmp/1
/bin/cp 1 /tmp/1
/bin/cp 1 /tmp/1
使用全路径不会提示覆盖
重复以下命令
\cp 1 /tmp/1
\cp 1 /tmp/1
\cp 1 /tmp/1
\cp 1 /tmp/1
在命令前面加\ 也不会提示覆盖
这是别名的问题 例如执行cp 命令时 会自动执行 cp -i(确认)
Alias 查看别名
Alias siqi = ‘echo “ i am old”’” 用siqi 代替echo “ i am old”’” 取别名 不写入配置文件只是临时生效
Unalias + 命令 取消别名
Vi /root/.bashrc 别名的配置文件所在目录 文件前带 “.” 表示隐藏文件
ls -a + 目录 显示隐藏文件
练习4
只查看wang.txt 中的20-30行内容
命令学习:
Seq (sequence) 输出数字队列seq 3 10 从3到10 输出
Sed -n(取消默认输出) ‘20,30p(print打印)’ wang.txt
Awk ‘{if(NR>19&&NR<31)print $1}’wang.txt
NR表示行号 $1表示第一列
Find / -type f(表示文件,d 表示目录) -name “文件名 ” + 目录 在相应目录下查找文件名为xxx 的 文件
例如:find /old -type -f -name “*.txt” |xargs sed -i ‘s#old#kid#g’把*.Txt 文件中查找名字为old内容然后替换成kid内容