常用命令

写在前面:
① 文件目录操作类的命令,比如:cd、ls、cp、rm、find、grep、zip、tar、yum、less等。
② 系统权限操作命令,比如:chmod 、chown 、sudo等。
③ 操作系统级命令,比如:shutdown、uname 、top、du、df、losf、netstat等。
文件目录操作类的命令:
cd
(1)cd /home 进入 ‘/ home’ 目录’
(2)cd .. 返回上一级目录
(3)cd ../.. 返回上两级目录
(4)cd ~user1 进入个人的主目录
(5)cd - 返回上次所在的目录
ls
(1)ls 查看目录中的文件
(2)ls -F 查看目录中的文件
(3)ls -l 显示文件和目录的详细资料
(4)ls -a 显示隐藏文件
(5)ls [0-9] 显示包含数字的文件名和目录名
cp
(1)cp file1 file2 复制一个文件
(2)cp dir/ . 复制一个目录下的所有文件到当前工作目录
rm
(1)rm -f file1 删除一个叫做 ‘file1’ 的文件’
(2)rmdir dir1 删除一个叫做 ‘dir1’ 的目录’
(3)rm -rf dir1 删除一个叫做 ‘dir1’ 的目录并同时删除其内容
(4)rm -rf dir1 dir2 同时删除两个目录及它们的内容
find、grep
这两个命令我早其他博客总结过:Linux下的查找(grep & find)
zip
(1)zip file1.zip file1 创建一个zip格式的压缩包
(2)zip -r file1.zip file1 file2 dir1 将几个文件和目录同时压缩成一个zip格式的压缩包
(3)unzip file1.zip 解压一
个zip格式压缩包
tar
(1)tar -cvf archive.tar file1 创建一个非压缩的 tarball
(2)tar -cvf archive.tar file1 file2 dir1 创建一个包含了 ‘file1’, ‘file2’ 以及 ‘dir1’的档案文件
(3)tar -tf archive.tar 显示一个包中的内容
(4)tar -xvf archive.tar -C /tmp 将压缩包释放到 /tmp目录下
(5)tar -cvfz archive.tar.gz dir1 创建一个gzip格式的压缩包
(6)tar -xvfz archive.tar.gz 解压一个gzip格式的压缩包
yum
(1)yum install package_name 下载并安装一个rpm包
(2)yum list 列出当前系统中安装的所有包
(3)yum update package_name 更新一个rpm包
(4)yum remove package_name 删除一个rpm包
(5)yum update package_name.rpm 更新当前系统中所有安装的rpm包
less
(1)less file1 类似于 ‘more’ 命令,但是它允许在文件中和正向操作一样的反向操作
(2)head -2 file1 查看一个文件的前两行
(3)tail -2 file1 查看一个文件的最后两行
(4)cat file1 从第一个字节开始正向查看文件的内容
(5)tac file1 从最后一行开始反向查看一个文件的内容
(6)more file1 查看一个长文件的内容
统权限操作命令
chmod
改变文件权限命令
(1)Chmod u+w filename 表示给文件所有者添加写权限
(2)Chmod u-w filename 表示删除文件所有者的写权限
(3)Chmod u=rwx filename 表示设置文件所有者的权限为可读,可写,可执行
(4)chmod u+x,g+w,o+w test.txt 给所有者添加执行的权限,给所有组和其它人添加写权限
chown
改变文件拥有者:chown命令
(1)chown user1 test.txt 比如要修改文件test.txt的拥有者为user1
(2)chown :user1 test.txt 要修改文件test.txt的拥有组为user1
(3)chown user1:user1 test.txt 要同时修改拥有者和拥有组
sudo
Linux sudo命令以系统管理者的身份执行指令,也就是说,经由 sudo 所执行的指令就好像是 root 亲自执行。
使用权限:在 /etc/sudoers 中有出现的使用者。
(1)-V 显示版本编号
(2)-h 会显示版本编号及指令的使用方式说明
(3)-l 显示出自己(执行 sudo 的使用者)的权限
操作系统级命令
shutdown
(1)
shutdown -h now 关闭系统
(2)shutdown -c 取消按预定时间关闭系统
(3)shutdown -r now 重启
(4)reboot 重启
(5)logout 注销
uname
(1)uname -m 显示机器的处理器架构
(2)uname -r 显示正在使用的内核版本
top
这两个命令我早其他博客总结过:Linux基础命令(三)之top详解
du、 df
博客总结过:Linux基础命令(二)之du、df详解
losf
(1)losf -i:(端口号)
losf -i:8080 → 查看这个端口号有哪些进程在访问
1
netstat
(1)netstat -a :列出所有端口(包括监听和未监听的)
(2)netstat -l :列出所有处于监听状态的socket(只显示监听端口)
(3)netstat -t:仅显示TCP相关选项
(4)netstat -u:仅显示UDP相关选项
(5)netstat -r:显示路由信息,路由表

1.查进程
ps命令查找与进程相关的PID号:
ps a 显示现行终端机下的所有程序,包括其他用户的程序。
ps -A 显示所有程序。
ps c 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。
ps -e 此参数的效果和指定”A”参数相同。
ps e 列出程序时,显示每个程序所使用的环境变量。
ps f 用ASCII字符显示树状结构,表达程序间的相互关系。
ps -H 显示树状结构,表示程序间的相互关系。
ps -N 显示所有的程序,除了执行ps指令终端机下的程序之外。
ps s 采用程序信号的格式显示程序状况。
ps S 列出程序时,包括已中断的子程序资料。
ps -t<终端机编号> 指定终端机编号,并列出属于该终端机的程序的状况。
ps u 以用户为主的格式来显示程序状况。
ps x 显示所有程序,不以终端机来区分。

最常用的方法是ps aux,然后再通过管道使用grep命令过滤查找特定的进程,然后再对特定的进程进行操作。
ps aux | grep program_filter_word,ps -ef |grep tomcat

ps -ef|grep java|grep -v grep 显示出所有的java进程,去处掉当前的grep进程。

https://www.cnblogs.com/wsy0202/p/10979096.html

2.杀进程
使用kill命令结束进程:kill xxx
常用:kill -9 324
Linux下还提供了一个killall命令,可以直接使用进程的名字而不是进程标识号,例如:# killall -9 NAME

3.进入到进程的执行文件所在的路径下,执行文件 ./文件名

grep用法:
grep 递归搜索文件
语法:grep -r -n “XXXX” ./
说明:-r 表示递归,-n 表示标出要搜索的内容所在的行数,“XXXX” 表示当前要搜索的内容,./ 表示在当前文件下

grep排除搜索目录
使用 grep时,经常会遇到这样一个问题,要查找的内容(变量命名等)在一个或者多个文件(目录)中有,但是,我们又不想搜索它们,因此就可以使用 –exclude-dir 选项。

用法

1、 单个目录示例:
grep -r -n “XXXX” ./ –exclude-dir=framework
不搜索framework目录下的文件

2、多个目录示例:
grep -r -n “XXXX” ./ –exclude-dir={framework,device,kernel-3.10}
不搜索framework,device,kernel-3.10 三个目录下的文件

3、多个文件示例:
grep -r -n “XXXX” ./framework –exclude=*.{hello,raindi}
在framework目录下排除搜索扩展名为hello和raindi的文件

find用法:
1、按照文件名查找
(1)find / -name httpd.conf
在根目录下查找文件httpd.conf,表示在整个硬盘查找

(2)find /etc -name httpd.conf
在/etc目录下文件httpd.conf

(3)find /etc -name ‘srm’
使用通配符(0或者任意多个)。表示在/etc目录下查找文件名中含有字符串‘srm’的文件

(4)find . -name ‘srm
’  
表示当前目录下查找文件名开头是字符串‘srm’的文件

2、按照文件特征查找  
(1)find / -amin -10  # 查找在系统中最后10分钟访问的文件(access time)

(2)find / -atime -2 # 查找在系统中最后48小时访问的文件

(3)find / -empty  # 查找在系统中为空的文件或者文件夹

(4)find / -group cat  # 查找在系统中属于 group为cat的文件

(5)find / -mmin -5  # 查找在系统中最后5分钟里修改过的文件(modify time)

(6)find / -mtime -1  #查找在系统中最后24小时里修改过的文件

(7)find / -user fred  #查找在系统中属于fred这个用户的文件

(8)find / -size +10000c #查找出大于10000000字节的文件(c:字节,w:双字,k:KB,M:MB,G:GB)

(9)find / -size -1000k  #查找出小于1000KB的文件

3、使用混合查找方式查找文件
参数有: !,-and(-a),-or(-o)。

(1)find /tmp -size +10000c -and -mtime +2  #在/tmp目录下查找大于10000字节并在最后2分钟内修改的文件

(2)find / -user fred -or -user george  #在/目录下查找用户是fred或者george的文件文件

(3)find /tmp ! -user panda #在/tmp目录中查找所有不属于panda用户的文件