xShell常用命令

xShell常用命令

  • 一、文件夹目录
    • 1、cd-更改目录
    • 2、mkdir-建立目录
    • 3、rm-删除目录
    • 4、pwd-查看当前路径
    • 5、rmdir-删除空目录
  • 二、文件操作
    • 1、cat-显示文件内容
    • 2、diff-比较文件内容
    • 3、查看文件的名字和后缀
    • 4、ls-列出文件
    • 5、cp-复制文件
    • 6、mv-移动和重命名文件
      • 找不同:
      • 选项的作用
    • 7、find-查找文件
    • 8、grep-搜索文件内容
  • 三、查询CPU
    • 1、查询CPU情况
    • 2、查看进程
    • 3、查看线程


一、文件夹目录

1、cd-更改目录

# 切换到主目录
cd 
# 切换到主目录
cd ~
# 切换到对应目录/lmz
cd /lmz
# 切换到当前目录下的dir目录
cd dir
# 切换到根目录
cd /
# 切换到上一级目录
cd ..
# 切换到上二级目录
cd ../..
# 切换到用户目录,比如是root用户,则切换到
cd ~

2、mkdir-建立目录

# 在当前目录中建立名为lmz的目录
mkdir lmz
# 在当前目录下建立制定的嵌套子目录
mkdir -p this/that/theother

3、rm-删除目录

# 删除lmz目录以及它所包含的所有内容
rm -rf lmz
# 删除当前目录下所有以字母a开头的文件,并且在每次删除时,提示用户进行确认
rm -i a*

4、pwd-查看当前路径

# 查看当前路径
pwd

5、rmdir-删除空目录

二、文件操作

1、cat-显示文件内容

# 显示文件内容
cat file

2、diff-比较文件内容

# 比较 目录1 与 目录2 的文件列表是否相同,但不比较文件的实际内容,不同则列出
diff dir1 dir2
# 比较文件1 与 文件2 的内容是否相同,如果是文本格式的文件,则将不同的内容显示,如果是二进制代码则指表示两个文件是不同的
diff file1 file2
# 比较文件,显示两个文件不相同的内容
comm file1 file2

3、查看文件的名字和后缀

# x:开始几行aaa.log:要查看的文件的名字和后缀
head -n x aaa.log

4、ls-列出文件

# 显示当前目录文件
ls
# 给出当前目录下所有文件的一个长列表,包括以句点开头的“隐藏文件”
ls -la
# 列出当前目录以字母a开头的所有文件
ls a*
# 给出当前目录下以.jar结尾的所有文件
ls -l *.jar

5、cp-复制文件

# 把文件复制为新文件 lmz.text
cp lmz lmz.text
# 把文件lmz从当前目录复制到 /home/app/目录下
cp lmz /home/app
# 把当前目录下的所有未隐藏文件复制到 /home/app/ 目录下
cp * /home/app
# 递归 将当前目录下的 lmz 目录复制为新目录 lmz.bak ,保持文件属性,并复制所有的文件,包括以句点开头的隐藏文件。注:-a选项包含-R选项
cp -a lmz lmz.bak
# 再覆盖前询问用户
cp -i
# 告诉用户正在做什么
cp -v
# 若给出的源文件是一个目录文件,此时将复制该目录下的所有子目录和文件
cp -r

6、mv-移动和重命名文件

# 将lmz重命名为xxq
mv lmz xxq
# 把当前目录下的 lmz 移动到 /app/目录下
mv lmz /app

找不同:

cmp 比较两个文件,并指出它们是否不同及不同的字节。
diff 比较两个文件或目录,并指出哪些文件的哪些行不同。
diff3 逐行比较三个文件。
sdiff 合并两个文件,并以交互方式输出结果。
vimdiff 使用vim同时编辑一个文档的2或3个版本并显示他们的区别使用。
comm 一行一行对两个已经排序的文件进行比较,在第三列中显示同一行是否相同。

选项的作用

-q: 仅显示有无差异,不显示详细的信息;
-r: 递归比较子目录中的文件。
-l 相同的行只输出在结果的左边(右边则只显示与左边有差异的行的内容);
-s 不显示相同的行(分两栏显示有差异的行的内容).

7、find-查找文件

# 在当前目录中查找rpm包
find .-name *.rpm
# 在当前目录及其子目录中查找文件名包含page的文件
find .|grep page
# 在系统的任何地方查找文件名包含traceroute的文件
locate traceroute

8、grep-搜索文件内容

# 在文件lmz中查找包含xxq的所有行
grep xxq /app/lmz
# 在WEB服务器日志文件lmz.log的后100行查找包含“404”的行
tail -100 /app/log/apache/lmz.log|grep 404
# 在apache配置文件中,查找所有非注释行
grep -v ^# /etc/apache2/httpd.conf

三、查询CPU

1、查询CPU情况

# 每间隔1秒钟打印一次系统维度的CPU复杂情况
vmstat -n 1

r: 表示系统中 CPU 等待处理的线程。由于 CPU 每次只能处理一个线程,所以,该数值越大,通常表示系统运行越慢。
us:用户模式消耗的 CPU 时间百分比。该值较高时,说明用户进程消耗的 CPU 时间比较多,比如,如果该值长期超过 50%,则需要对程序算法或代码等进行优化。
sy:内核模式消耗的 CPU 时间百分比。
wa:IO 等待消耗的 CPU 时间百分比。该值较高时,说明 IO 等待比较严重,这可能磁盘大量作随机访问造成的,也可能是磁盘性能出现了瓶颈。
id:处于空闲状态的 CPU 时间百分比。如果该值持续为 0,同时 sy 是 us 的两倍,则通常说明系统则面临着 CPU 资源的短缺。

# 查看进程维度的CPU负载 , 在终端输入 shift + p(大写的P) 可以按照CPU占用排序显示
top -c

在终端模式下输入 小写k , 然后输入进程PID,回车,可以直接终止占比较高的进程
load average 是对 CPU 负载的评估,其值越高,说明其任务队列越长,处于等待执行的任务越多。

2、查看进程

# 查看是否存在 D 状态进程。
ps -axjf

D 状态是指不可中断的睡眠状态。该状态的进程无法被 kill,也无法自行退出。只能通过恢复其依赖的资源或者重启系统来解决。

3、查看线程

# 查看是否存在 D 状态进程。
top -H -p _进程PID
# 内存使用率
free -h

free -m
# 服务器运行时间
uptime

持续更新ing。。。。。

你可能感兴趣的:(linux,运维,服务器)