转载Linux常用命令

转自:https://blog.csdn.net/deng_xj/article/details/88803148

 

 

 

Linux常用shell命令

[root@dengxj]#
各项含义
[用户名@计算机名 当前工作目录]

查看防火墙

#查看iptables是否已安装
iptables --version

iptables -nL
  • 1
  • 2
  • 3
  • 4

防火墙开端口

# 以80端口为例
iptables -I INPUT -i wlan0 -p tcp --dport 80 -j ACCEPT
iptables  -I OUTPUT -o wlan0 -p tcp --sport 80 -j ACCEPT

#开启指定端口 (开:ACCEPT   关:DROP)
iptables -I INPUT -i eth0 -p tcp --dport 20 -j ACCEPT
iptables  -I OUTPUT -o eth0 -p tcp --sport 20 -j ACCEPT

#完全开放
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

查看端口监听情况

netstat -natp
  • 1

查询进程与结束进程命令

#查询所有进程
ps -ef

# 查询frpc进程,并结束
ps -ef |grep frpc
kill -9 [进程号]   9就是删除命令
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

cd (change directory)切换目录

cd           #root根目录
cd   /       #系统根目录 
cd  ../../   #返回上上一层目录 
  • 1
  • 2
  • 3

ls/dir (list)列出目录下文件

ls  -a      (--all)                #列出所有文件
ls  -d      (--directory)          #列出目录
ls  -i      (--inode)              #显示每个文件的inode 号(索引节点号,可以理解为文件的存储地址) 
ls  -l      (-long)                #较长格式列出
ls  -lh     (--human-readable)与-l #人性化阅读输出
  • 1
  • 2
  • 3
  • 4
  • 5

dirs 显示目录记录

dirs    +n       #显示从左边算起第n笔的目录。
dirs    -n       #退一级目录的路径
dirs    -l       #显示目录完整的记录。
  • 1
  • 2
  • 3

mv (move)移动或更名现有的文件或目录

mv  -b       (--backup)+ 目标文件或路径        #移动到目标目录,若覆盖文件,则先备份
mv  -f      (--force )+ 目标文件或路径         #强制覆盖,没有目标文件时相当于备份
mv  -i      (--interactive)+ 目标文件或路径   #覆盖前先行询问用户
mv  -u      (--update)+ 目标文件或路径        #在移动或更改文件名时,若目标文件已存在,且其文件日期比源文件新,则不覆盖目标文件。 
  • 1
  • 2
  • 3
  • 4

pwd (print working directory)显示工作目录(用于查看绝对路径!!!)

pwd          #显示当前工作目录
  • 1

rm (remove)删除文件或目录

rm  -d      (-directory)    #直接把欲删除的目录的硬连接数据删成0,删除该目录 
rm  -f      (--force)        #强制删除文件或目录
rm  -i      (interactive)    #删除既有文件或目录之前先询问用户 
rm  -r或-R--recursive)    #递归删除,防止目录里面有文件不能删除  
  • 1
  • 2
  • 3
  • 4

mkdir (make directories) 建立目录

mkdir            +文件名                        #创建目录
mkdir   -m      (--mode)+a=权限+目录名         #设置目录权限(rwx)例:mkdir -m a=rw bbb   创建目录bbb,权限为rw(a是模式固定写法)
mkdir   -p      (--parents)+父目录/子目录      #若所要建立目录的上层目录目前尚未建立,则会一并建立上层目录  例1:mkdir -p 111/abc    创建abc目录,111为子目录  例2:mkdir -p /ms/{sales,hr,web}   创建一个名为/ms的目录,其中有sales、hr、web的子目录 
mkdir   -pv      +目录名                        #批量创建目录  例:mkdir -pv /tmp/test/{a1,b1}/{c1,d1}
mkdir   -v      (--verbose)                   #创建目录,并显示详细信息
  • 1
  • 2
  • 3
  • 4
  • 5

rmdir 删除空目录

rmdir            +目录名             #删除目录,注意必须是空目录
rmdir    -p      +目录/目录/目录      #删除指定目录及其上级文件夹  例:rmdir -p a/b/c
  • 1
  • 2

su 切换用户

su       +用户名                #切换到用户
sudo     +命令                  #在root用户下执行一条命令
sudo su                        #下面的命令都用root用户执行
su root                        #CentOS下切换root用户的一种方式
  • 1
  • 2
  • 3
  • 4

cp (copy)拷贝文件

cp  -p      +文件名 路径              #将文件拷贝到指定路径,并且保留原文件的属性  例:cp -p test.rb /home/test  将test.rb拷贝到test目录
cp  -r   +源目录名 目标目录名          #将某目录copy到目标目录下  例:cp -r Dir/ /home/test      将Dir目录copy到test目录下
cp  -fr  +源目录下文件名 目标目录名     #将源目录下文件名文件强制copy到目标目录下   
cp   test.rb{,.bak}                  #备份test.rb,并在尾部加上.bak后缀
cp -u -v file1 file2                 #复制文件,只有源文件较目的文件的修改时间新时,才复制文件
cp file1 file2                       #将文件file1复制成文件file2
cp -i file1 file2                    #采用交互方式将文件file1复制成文件file2
cp -p a.txt tmp/                     #复制时保留文件属性
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

chmod 改变文件/目录的权限

chmod ugo+r    文件          #所有人皆可读取
chmod a+r      文件          #所有人皆可读取
chmod ug+w,o-w 文件          #设为该档案拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入
chmod u+x      文件          #创建者拥有执行权限 
chmod a-x      文件          #收回所有用户的对文件的执行权限
chmod 777      文件          #所有人可读,写,执行
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

cat 查看文件内容

cat          +目标文本          #普通输出 
cat -n 目标文本                 #开头显示行号
cat -E 目标文本                 #以$结束
cat -ns 目标文本                #去空行,加行号
  • 1
  • 2
  • 3
  • 4

touch 创建文件

touch            +文件名           #将文件的创建时间改为当前时间,文件不存在则建之  例:touch test.php  将test.php的档案时间改为,当前时间,文件不存在建之
touch   -c -t 时间 +文件名          #将档案时间改为特定时间  例:touch -c -t 05061803 test.php     将档案时间改为,56183分
touch   -r                         #参考文件名 目标文件名  将目标文件档案改成跟参考文件一样 例: touch -r abc.php test.php   将test.php档案改成跟abc.php一样
touch   d 时间 文件名                #将文件日期改为特定天数时间  例:touch -d "2 days ago" test.php   将test.php日期修改为2天以前
  • 1
  • 2
  • 3
  • 4

echo 显示一行文本 (可使用通配符,正则表达式)

echo            +文本内容              #显示文本   
echo   -n       +文本内容              #显示不带尾部回车符的文本
echo   -e       +"文本内容"            #允许使用转义字符输出文本  例:echo -e "a\nb\nc" 
echo            +新文本内容 > 文件名    #重定向,清除源文件所有内容,并插入单行   例:echo "hello word" >jackonill.txt
echo            +新文本内容 >> 文件名   #追加重定向,在原有文件基础上末尾插入一行文本逐行
  • 1
  • 2
  • 3
  • 4
  • 5

ifconfig/ip addr(CentOS) 显示或设置网络设备

ifconfig             #处于激活状态的网络接口
ifconfig     -a      #所有配置的网络接口,不论其是否激活 
  • 1
  • 2

ping 检测主机(127.0.0.1为主机,可以检验网卡,用于检测内网)

ping    +ip/域名         #检测外网
  • 1

tar (tape archive)解压缩文件

tar  -czvf   +压缩文件名 源文件名    #将ar_test文件打包并且压缩  例:tar -czvf ar_test.tar.gz ar_test   将ar_test文件打包并且压缩
tar  zxvf    +目标文件              #解压  例: tar zxvf ar_test.tar.gz         解压ar_test.tar.gz压缩包
  • 1
  • 2

date 显示系统时间

date                            #打印时间
date     -s      +时间          #设置时间  例:date -s '14:35:40' 
date     +%m%d%H%M%S           #按照格式输出时间
  • 1
  • 2
  • 3

history 查看用户历史操作

history         #查看所有执行过的命令
history  n      #显示n条历史记录
!n              #执行编号历史是n的命令,注意感叹号       例:!4             执行编号是4的命令
history -c      #清除历史记录
  • 1
  • 2
  • 3
  • 4

id/who 查看用户

id/who           #显示当前用户的信息
id   某用户       #显示某用户的信息
who -a           #显示目前登入系统的用户详细信息
who -b           #上次系统启动时间
  • 1
  • 2
  • 3
  • 4

man 查看帮助文档

man     +命令    #查看某命令手册
  • 1

vi/vim(vi增强工具) 编辑文本

vim 文本名        #编辑某文本
set nu(number)  #vi/vim模式下显示行数
  • 1
  • 2

diff 比较两个文件的差异

diff    文件1 文件2                 #比较二个文件的不同 
diff    文件夹1/ 文件夹2/            #比较二个文件夹的不同
diff    -r  文件夹1/ 文件夹2/        #递归比较二个文件夹的不同
  • 1
  • 2
  • 3

apt-get/yum/dnf 下载软件包命令

apt-get install  软件/包           #安装包
apt-get update   软件/包           #更新软件
apt-get remove   软件/包           #卸载软件
apt-get upgrade                   #更新已安装的包
apt-get clean                     #清理无用的包
  • 1
  • 2
  • 3
  • 4
  • 5

service 服务

service 服务名 status      #查看某服务状态
service 服务名 start       #开启某服务
service 服务名 restart     #重启某服务
service 服务名 stop        #停止某服务
service 服务名 reload      #重新加载某服务配置文件 
  • 1
  • 2
  • 3
  • 4
  • 5

ssh

ssh 用户@ip地址    #远程ssh连接某主机
  • 1

useradd 添加用户

useradd     用户名          #添加某用户
用户名       passwd         #为某用户添加密码
useradd -r      用户名      #添加系统用户
useradd -d 路径 用户名       #添加用户,并且指定,home目录
  • 1
  • 2
  • 3
  • 4

df 报告文件系统磁盘空间的使用情况

df          #列出各文件系统的磁盘空间使用情况
df -a       #显示所有文件系统的磁盘使用情况
df -ia      #列出各文件系统ionde使用情况
df -h      (--human)#目前磁盘空间和使用情况 以更易读的方式显示
  • 1
  • 2
  • 3
  • 4

lsof (list open files)是一个列出当前系统打开文件的工具

lsof                #列出所有正在使用文件
lsof    文件名       #找出谁在使用某个文件
lsof -c 程序         #查找某个程序打开的所有文件
lsof -i             #列出所有网络连接
lsof -i   TCP       #列出所有TCP网络连接
lsof -i:端口号      #找到使用某个端口的进程
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

特殊装逼特效命令

sl                  #跑火车
cmatrix             #代码雨    
cowsay +字符串       #小奶牛说你想说的话
命令 | lolcat        #彩虹效果展示命令效果
  • 1
  • 2
  • 3
  • 4

查找

which  查看可执行文件的位置。

whereis 查看文件的位置。 

locate   配合数据库查看文件位置。

find   实际搜寻硬盘查询文件名称。
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
which 可执行文件名称 

命令参数:

-n  指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。

-p  与-n参数相同,但此处的包括了文件的路径。

-w  指定输出时栏位的宽度。

-V  显示版本信息
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
 
posted @ 2019-11-06 21:03  yaohuimo  阅读(100)  评论(0编辑  收藏  举报