Linux 常见的命令
cd
命令详解
如何进入上级目录
cd ..
如何进入当前用户主目录
cd ~
如何进入上两级目录
cd ../..
进入当前目录命令
cd .
如何进入/usr/local
目录
cd /usr/local
mkdir
命令详解
新建一个文件夹 yyds
mkdir yyds
新建三个文件夹 yyds1 yyds2 yydst3
mkdir yyds1 yyds2 yyds3
新建一个多层级文件夹 yy/test/cool
mkdir -p yy/test/cool
新建一个文件夹yyCool
,并设置权限
mkdir -m 777 yyCool
mv
命令详解: 剪切
移动当前用户文件夹下的test文件夹,移动到/usr/local目录
mv ~/test/ /usr/local
移动一个文件test.ini ,移动到/usr/local目录
mv test.ini /usr/local
当前目录的test.tar.gz 移动到 /usr/local目录,并重命名为testtest.tar.gz
mv test.tar.gz /usr/local/testtest.tar.gz
移动文件到上级目录
mv test.tar.gz ../
一条命令,移动两个文件 test1.tar test2.tar 到目录 /usr/local
mv test1.tar test2.tar -t /usr/local
mv -t /usr/local test1.tar test2.tar
–target-deirectory这个长选项后面必须接参数,所以-t这个短选项也必须带参数(即目标目录),但不是用“=”相连,而是用空格。
移动test.txt到/usr/local下,但/usr/local已存在test.txt,强制覆盖
mv test.txt -f /usr/local
移动test.txt到/usr/local下,但/usr/local已存在test.txt,会询问是否覆盖
mv test.txt -i /usr/local
cp命令详解:复制
把源文件更新覆盖给目标文件,如果原来的比较新或者没有目的文件,那么不会进行copy的动作
cp -u A.log B.log
其中A.log是源文件
创建文件的软链接
cp -s a/b/c/d/e/orginalFile.txt softlink.txt
创建文件的硬链接
cp -l a/b/c/d/e/orginalFile.txt hardlink.txt
注意:当被链接的文件删除时,软链接文件也无法访问了,而硬链接文件仍能正常访问。
复制文件test.txt到/usr/local目录
cp test.txt /usr/local
复制文件夹 yyTest到/usr/local目录
cp -r yyTest/ /usr/local
再次复制文件test.txt到/usr/local目录,强制覆盖
cp -f test.txt /usr/local
再次复制文件test.txt到/usr/local目录,询问是否强制覆盖
cp -i test.txt /usr/local
复制文件tests.txt到/usr/local目录,并把修改时间和访问权限也复制
cp -p test.txt /usr/local
history命令详解
查看历史命令执行记录
history
查看命令mkdir 的历史执行记录
history | grep mkdir
执行历史记录中,序号为330的命令
!330
[root@iZ2zebqeq8f5murg3r515qZ ~]# !330
ll
total 32
drwxr-xr-x 3 root root 22 Dec 25 10:44 auto
-rw-r--r-- 1 root root 25166 Jan 5 15:36 install.sh
drwxr-xr-x 8 root root 4096 Jan 10 21:52 oneinstack
[root@iZ2zebqeq8f5murg3r515qZ ~]#
执行上一条命令(直接输入两个感叹号)
!!
查找最后10条历史记录(两种方式)
history 10
history | tail -10
清除历史记录
history -c
将当前所有历史记录写入历史文件中,默认写入 ~/.bash_history
history -w
cat ~/.bash_history
tar命令详解
命令 | 说明 |
---|---|
-c | 建立压缩档案 |
-x | 解压 |
-t | 查看内容 |
-r | 向压缩归档文件末尾追加文件 |
-u | 更新原压缩包中的文件 |
这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。
命令 | 说明 |
---|---|
-z | 有gzip属性的 |
-j | 有bz2属性的 |
-Z | 有compress属性的 |
-v | 显示所有过程 |
-O | 将文件解开到标准输出 |
下面的参数-f是必须的
-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。
压缩一个文件 yyTest.ini
tar -zcvf yyTest.tar.gz yyTest.ini
压缩多个文件 yyTest.ini readme.ini
tar -zcvf all.tar.gz yyTest.ini readme.ini
压缩文件夹 yyTest/
tar -zcvf yyTest.tar.gz yyTest/
将当前目录,所有jpg文件打包成yyTestjpg.tar
tar -cvf yyTestjpg.tar *.jpg
将当前目录,所有jpg文件打包成yyTestjpg.tar.gz
tar -zcvf yyTestjpg.tar.gz *.jpg
解压 yyTestjpg.tar
tar -xvf yyTestjpg.tar
解压 yyTestjpg.tar.gz
tar -zxvf yyTestjpg.tar.gz
tail命令详解
实时刷新log
tail -f test.log
实时刷新最新500条log
tail -500f test.log
显示最后5条log(两种写法)
tail -n 5 test.log
tail -5 test.log
显示第五条后面的所有log
tail -n +5 test.log
ls命令详解
列出当前目录中所有的子目录和文件(不包含隐藏文件 .开头的)
ls
列出目录下的所有的子目录和文件(包含隐藏文件 .开头的)
ls -a
列出文件的详细信息(包括权限、所有者、文件大小等) 两种方式
ls -lll
列出当前目录中所有以“test”开头的详细内容
ls -l test*
按文件最后修改时间排序,降序
ls -t
按文件大小排序,从大到小
ls -S
查看文件大小时增加可读性(1K 2M 2G)
ls -lh
ps命令详解
查看所有进程
ps -A
查看java进程
ps -ef | grep java
显示所有进程信息,连同命令行
ps -ef
ps 与grep 常用组合用法,查找特定进程
ps -ef | grep java
ps -ef返回列表各个字段的含义
[root@iZ2zebqeq8f5murg3r515qZ /]# ps -ef
UID:表示用户ID
PID:表示进程ID
PPID:表示父进程号
C:表示CPU的占用率
STIME:进程的启动时间
TTY:登入者的终端机位置
TIME:表示进程执行起到现在总的CPU占用时间
CMD:表示启动这个进程的命令
显示所有进程更详细的信息,包括进程占用CPU、内存
ps -aux
根据CPU、内存使用来降序排序
ps -aux --sort -pcpups -aux --sort -pmem
ps -aux返回列表各个字段的含义
[root@iZ2zebqeq8f5murg3r515qZ /]# ps -aux
USER:表示哪个用户启动了这个进程
PID :进程ID
%CPU:进程CPU的占用率
%MEM:进程物理内存的占用率
VSZ :进程占用的虚拟内存量 (Kbytes)
RSS :进程当前实际上占用了多少内存
TTY :进程是在哪个终端机上面运作,若与终端机无关,则显示 ?,另外, tty1-tty6 是本机上面的登入者程序,若为 pts/0 等等的,则表示为由网络连接进主机的程序。
STAT:该程序目前的状态,主要的状态有
R :运行;该程序目前正在运作,或者是可被运作
D:不可中断:一般是IO进程
S :中断;该程序目前正在睡眠当中 (可说是 idle 状态),但可被某些讯号 (signal) 唤醒。
T :停止:该程序目前正在侦测或者是停止了
Z :僵尸:该程序应该已经终止,但是其父程序却无法正常的终止他,造成 zombie (僵尸) 程序的状态
START:该进程启动的时间点
TIME :进程从启动后到现在,实际占用CPU的总时间
COMMAND:启动该进程的命令
wget命令详解
下载isTester.jpg文件
wget https://p0.meituan.net/dpgroup/839f00ac763de998d9a1b5436f422b0b6399308.jpg
下载isTester.jpg文件,并存储名为isTester_Logo.jpg
wget -o isTester_Logo.jpg https://p0.meituan.net/dpgroup/839f00ac763de998d9a1b5436f422b0b6399308.jpg
下载isTester.jpg文件,后台形式下载
wget -b https://p0.meituan.net/dpgroup/839f00ac763de998d9a1b5436f422b0b6399308.jpg
diff 命令
比较两个文件之间的不同
语法:diff [-abBcdefHilnNpPqrstTuvwy][-<行数>][-C <行数>][-D <巨集名称>][-I <字符或字符串>][-S <文件>][-W <宽度>][-x <文件或目录>][-X <文件>][--help][--left-column][--suppress-common-line][文件或目录1][文件或目录2]
diff -u log2014.log log2013.log 以合并的方式来显示文件内容的不同
diff -c log2014.log log2013.log 显示全部内文,并标出不同之处。
cmp 命令
Linux cmp 命令用于比较两个文件是否有差异。
语法:
cmp [-clsv][-i <字符数目>][--help][第一个文件][第二个文件]
参数:
-c或–print-chars 除了标明差异处的十进制字码之外,一并显示该字符所对应字符。
-i<字符数目>或–ignore-initial=<字符数目> 指定一个数目。
-l或–verbose 标示出所有不一样的地方。
-s或–quiet或–silent 不显示错误信息。
file 命令
Linux file命令用于辨识文件类型。
语法:
file [-bcLvz][-f <名称文件>][-m <魔法数字文件>...][文件或目录...]
-b 列出辨识结果时,不显示文件名称。
-c 详细显示指令执行过程,便于排错或分析程序执行的情形。
-f<名称文件> 指定名称文件,其内容有一个或多个文件名称时,让file依序辨识这些文件,格式为每列一个文件名称。
-L 直接显示符号连接所指向的文件的类别。
-m<魔法数字文件> 指定魔法数字文件。
-v 显示版本信息。
-z 尝试去解读压缩文件的内容。
[文件或目录…] 要确定类型的文件列表,多个文件之间使用空格分开,可以使用shell通配符匹配多个文件。
which命令
Linux which命令用于查找文件。
which指令会在环境变量$PATH设置的目录里查找符合条件的文件。
语法:
which [文件...]
alias 命令
Linux alias命令用于设置指令的别名。
用户可利用alias,自定指令的别名。若仅输入alias,则可列出目前所有的别名设置。alias的效力仅及于该次登入的操作。若要每次登入是即自动设好别名,可在.profile或.cshrc中设定指令的别名。
语法
alias[别名]=[指令名称]
参数说明:若不加任何参数,则列出目前所有的别名设置。
echo详解:输出命令
显示文本行或者变量取值,向屏幕输出字符串,或者把字符串输出到文件中
语法:
[root@localhost ~]# echo [选项] [输出内容]
-e:支持反斜线控制的字符转换(具体参见表 1)
-n:取消输出后行末的换行符号(内容输出后不换行)
[root@iZ2zebqeq8f5murg3r515qZ ~]# echo "hello world"
hello world
[root@iZ2zebqeq8f5murg3r515qZ ~]# echo -e "hello \n world"
hello
world
[root@iZ2zebqeq8f5murg3r515qZ ~]# echo "hello\world"
hello\world
评论