Linux命令复盘
Posted Mrs.King_UP
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux命令复盘相关的知识,希望对你有一定的参考价值。
一、文件目录操作
1.ls命令
查看linux文件夹包含的文件以及文件权限
-
ls
列出当前目录下所有文件 -
ls -l
列出目录下所有的文件及文件权限、属性等信息 -
ls -a
列出目录下隐藏的文件 -
ll
列出目录下所有的文件(包括以后隐藏文件)和权限属性信息1.列出home目录下所有文件和目录的详细信息 ls -a -l /home ls -al /home 2.列出当前目录下所有以"d"开头的文件目录详情 ls -l d* 3.权限解析:第一列第1位为"d",为目录;为"-",为文件;为"l",为链接文件。后9位,以此对应owner、group、others三种身份所拥有的权限,权限的顺序为:readable、writable、excutable dr-xr-xr-x. 17 root root 224 Dec 14 01:38 .. -rw-------. 1 root root 1.3K Dec 14 01:38 anaconda-ks.cfg -r-xr-x---的含义为当前文档是一个文件,拥有者可读、可执行,同一个群组下的用户,可读、可执行,其他人没有任何权限。
2.cd命令
切换当前工作目录
cd /
从当前目录进入系统根目录cd ..
返回上一级目录
3.pwd命令
查看当前工作目录的完整路径
4.mkdir命令
创建指定名称的目录,要求创建目录的用户对创建的目录具有写的权限,且名称不能是已有的目录
mkdir -m 777 directions
创建文件夹并设定权限mkdir -p diretion1/diretion2
级联创建,路径中的目录不存在,则自动创建多个目录mkdir -v test
每次创建新目录都显示信息mkdir --help
显示mkdir命令的帮助信息mkdir --version
显示mkdir命令的版本
5.rm命令
删除一个或多个文件或目录,如果没有使用-r,则rm不会删除目录
rm -f filename
强制删除,不会询问rm -i filename
交互式删除文件rm -r direction
删除目录和该目录下的所有东西rm --version
命令的版本信息rm --help
命令的使用说明
6.rmdir命令
删除空目录
rmdir t1
删除t1空目录,不为空,则无法删除rmdir -p t2/t3
删除空的子目录t3,若t2为空,则t2同样被删除
7.mv命令
移动文件or将文件改名
-
mv -b filename direction
若需覆盖文件,则覆盖前先行备份 -
mv -f filename direction
不会询问,强制覆盖 -
mv -i filename direction
移动文件时,若目标文件已经存在,则会询问是否覆盖1.将test1.txt重命名为test2.txt mv test1.txt test2.txt 2.将文件test1.txt移动到目录test2中 mv test1.txt test2 3.将文件t1、t2、t3移动到test目录中 mv t1.txt t2.txt t3.txt test
8.cp命令
将源文件复制到目录文件
-
cp -i filename direction
交互式,覆盖前询问 -
cp -n filename direction
不覆盖已经存在的文件 -
cp -f filename direction
强制复制目录or文件,不管目标文件和目录是否已经存在 -
cp -u filename direction
只会在源文件最后修改时间比目的文件新时,或对应的目的文件不存在时,才复制文件1.将t1.txt复制到t目录中,若文件存在,会询问是否覆盖;若文件不存在,直接复制 cp t1.txt t 2.复制t1整个目录到t2目录下 cp -a t1 t2
9.touch命令
touch命令,创建文件
1.创建不存在的文件
touch test.txt
2.更新test.txt的时间和test1.txt的时间相同
touch -r test.txt test1.txt
10.cat命令
查看文档内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示。常与重定向符号配合使用。
-
cat -b test.txt
输出test.txt的内容,并对非空行输出行编号 -
cat -n test.txt
输出test.txt的内容,并从1开始为所有行添加行编号 -
cat -s
(–squeeze-blank)对连续两行以上的空白行,使用一行的空白行替换 -
cat -E
在每行结束时显示$1.将test.log的内容与test1.log的内容进行拼接,输出带有编号的内容 cat -n test.log test1.log 2.反向显示 tac test2.txt
11.nl命令
nl对输出的文件自动加上行号。
-
nl -b a test.txt
无论是否为空行,列出行号(类似于cat -n) -
nl -b t test.txt
(默认)空行,不加行号 -
nl -n ln test.txt
行号在最左侧显示 -
nl -n rn test.txt
行号在最右侧显示 -
nl -n rz test.txt
行号在最右侧显示,且加0 -
nl -w 2 test.txt
行号的位置1.用nl列出test.log的内容 nl test.log 2.用nl列出test.log的内容,空行也加上行号 nl -b a test.log
12.more命令
查看文件内容,会显示查看文章的百分比,与cat不同,more可以按页来查看文件内容;空格——向下滚动一屏;=——输出行号;q——退出more
more +3 test.txt
从第3行开始显示内容more -5 test.txt
设置每屏显示5行more +/day3 test.txt
从test.txt查找第一个出现"day3"字符串的行,并从该行的前2行开始显示more -c test.txt
从顶部清屏,然后显示more -u test.txt
将文件内容中的下划线去掉more -s test.txt
把连续的多个空行显示为一行
13.less命令
less与more类似,可以查看文件;在less查看文件时,‘/字符串’能向下搜索"字符串";’?字符串’能向上搜索"字符串";[pagedown]——向后翻一页;[pageup]——向前翻一页
less -e test.txt
当文件显示结束,自动离开less -f test
强制打开特殊文件less -N test.txt
显示每行的行号less -s test.txt
显示连续空行为一行less -m test.txt
显示类似与more命令的百分比
14.head命令
查看文件头部内容,默认显示文件前10行内容
head -n 20 test.txt
显示文件前20行head -c 20 test.txt
显示文件前20个字节
15.tail命令
查看文件尾部内容,默认显示文件后10行内容
tail -n 5 test.txt
显示文件最后5行内容tail -c 20 test.txt
显示文件最后20个字节
二、文件查找
16.which命令
在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果
which pwd
查找文件、命令路径which which
用which去找出which
17.whereis命令
查找可执行文件、源代码文件、帮助文件在文件系统中的位置;-b:定位可执行文件;-m:定位帮助文件;-s:定位源代码文件
whereis svn
将与svn文件相关的文件都查找出来whereis -b svn
只将二进制文件查找出来
19.find命令
-
-name
按照文件名查找文件 -
-type
查找某一类型的文件 -
-print
将匹配的文件输出1.打印当前目录文件目录列表 find . -print 2.打印当前目录下所有不以.txt结尾的文件名 find . ! -name "*.txt" 3.打印当前目录下所有不以.txt结尾的文件名 find . -type f -name "*.php" -perm 777
三、文件打包上传和下载
20.tar命令
用来压缩和解压文件的。本身不具有压缩功能,用来调用压缩功能实现的。
压缩:
- -c:建立新的压缩文件;
- -v:显示操作过程;
- -f:指定压缩文件;
解压:
-
-x:从压缩文件中提取文件;
-
-z:支持gzip解压文件;
-
-j:支持bzip2解压文件;
1.仅打包,不压缩 tar -cvf test.tar test.log 2.打包后,以gzip压缩 tar -zcvf test.tar.gz test.log 3.打包后,以bzig2压缩 tar -zcvf test.tar.bz2 test.log 4.将tar包解压缩 tar -xvf test.tar tar -zxvf test.tar.gz tar -jxvf test.tar.bz2
21.gzip命令
使用广泛的压缩命令,经过gzip压缩后,其名臣后出现".gz"扩展名
gzip test.txt
压缩test.txt文件为.gz文件gzip -d test.gz
解压缩gzip -f test.txt
强行压缩文件
四、文件权限设置
22.chmod命令
用于修改linux系统文件或目录的访问权限
权限范围:
- u:(user)该文件的拥有者
- g:(group)与该文件的拥有者属于同一个群体者
- o:(others)其他以外所有人
- a:(all)所有用户和群组
权限代号:
-
r:读权限,用4表示
-
w:写权限,用2表示
-
x:执行权限,用1表示
-
-:删除权限
-
+:增加权限
-
=:唯一设定权限
1.给test.log所有用户和群组添加执行权限 chmod a+x test.log 2.删除所有用户的可执行权限 chmod a-x test.log 3.显示文件的权限变化,给t1.tar的群组添加写权限 chmod -c g+x t1.tar 4.将文件test设置成和test.log相同的权限 chmod --reference=test.log test
五、磁盘存储
23.df命令
-a
全部文件系统列表-h
方便阅读方式显示-H
等于“-h”,但是计算式,1K=1000,而不是1K=1024-i
显示inode信息-k
区块为1024字节-l
只显示本地文件系统-m
区块为1048576字节--no-sync
忽略 sync 命令-P
输出格式为POSIX--sync
在取得磁盘信息前,先执行sync命令-T
文件系统类型
六、性能监控和优化命令
24.top命令
显示当前系统正在执行的进程信息,包括进程ID、内存占用率、CPU占用率
25.free命令
显示系统使用和空闲的内存情况,包括物理内存、交互区内存(swap)和内核缓冲区内存。
1.显示内存情况
free
free -g #以GB为单位
free -m #以MB为单位
26.iostat命令
通过iostat方便查看CPU、网卡、tty设备、磁盘、CD-ROM 等等设备的活动情况, 负载信息。
27.lsof命令
用于查看你进程打开的文件,打开文件的进程,进程打开的端口(TCP、UDP)
七、网络命令
28.ifconfig命令
ifconfig 命令用来查看和配置网络设备。
-
up
启动指定网络设备/网卡 -
down
关闭指定网络设备/网卡。 -
arp
设置指定网卡是否支持ARP协议 -
-a
显示全部接口信息 -
-s
显示摘要信息(类似于 netstat -i) -
add
给指定网卡配置IPv6地址 -
del
删除指定网卡的IPv6地址1.启动关闭指定网卡 ifconfig eth0 up ifconfig eht1 down 2.用ifconfig修改mac地址 ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE
29.route命令
route命令用于操作基于内核ip路由表,它的主要作用是创建一个静态路由让指定一个主机或者一个网络通过一个网络接口,如eth0。
-c
显示更多信息-n
不解析名字-v
显示详细的处理信息-F
显示发送信息-C
显示路由缓存-f
清除所有网关入口的路由表。-p
与 add 命令一起使用时使路由具有永久性。add
:添加一条新路由。del
:删除一条路由。-net
:目标地址是一个网络。-host
:目标地址是一个主机。netmask
:当添加一个网络路由时,需要使用网络掩码。gw
:路由数据包通过网关。注意,你指定的网关必须能够达到。metric
:设置路由跳数。
1.显示当前路由
route
route -n
2.添加网关/设置网关
route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0
30.ping命令
确定网络和各外部主机的状态;跟踪和隔离硬件和软件问题;测试、评估和管理网络。
**ping [参数] [主机名或IP地址]**
ping -b 192.168.120.1
31.netstat命令
用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。
列出所有端口
netstat -a
31.netstat命令
执行telnet指令开启终端机阶段作业,并登入远端主机.
telnet [参数] [主机]
以上是关于Linux命令复盘的主要内容,如果未能解决你的问题,请参考以下文章