整理Linux的一些常用命令

221 阅读1分钟

随便看看一些linux的命令发现其实也没什么,其实命令真的很多,只记录一些我有时候想用却忘了怎么写的命令。

括号里是命令的英文以及意思方便理解记忆,每个单词有很多意思,我写的是在命令行里的意思

要背的几个单词 list directory reverse size change print

1、ls (list:把...列出来)

ls -a (all:所有) 列出所有文件,包括以.开始的隐藏文件
ls -A 列出除了.或者..开始的所有文件
ls -r (reverse:使...反转)反转排列
ls -t (time:时间)以时间修改顺序列出
ls -S(size:文件大小)
ls -l(list:列表)列出详细信息

举例

ls -lrS 大小反序显示文件详细信息

请各位举一反三!

2、cd (change directory:改变文件夹)

cd [文件夹名]

举例

cd /文件夹名

cd ~   进入home

cd -   进入上一次的工作路径

cd !$  用上个命令的参数当路径进入

pwd(print working directory:打印工作目录)

pwd  查看当前工作目录

mkdir(make directory:做一个工作目录)

mkdir -p (path:路径)

示例

mkdir -p /a/b/c 懂的都懂

rm (remove:移除)!!!不要乱用!!!

rm -r [文件夹名]

rm -- -f*ck 删除f*ck fack fbck fcck...

rmdir (remove directory)

从一个目录中删除一个或多个子目录项,删除某目录时也必须具有对其父目录的写权限 注意:不能删除空目录

mv(move:移动)

移动文件或修改文件名,根据第二参数类型(如目录,则移动文件;如为文件则重命令该文件)。

当第二个参数为目录时,第一个参数可以是多个以空格分隔的文件或目录,然后移动第一个参数指定的多个文件到第二个参数指定的目录中。

mv test.log test.txt 因为第二个参数是文件名所以是改名

mv * ../ 移动当前文件夹下所有文件到上层文件夹

cp(copy:复制)

cp a.txt test 复制a.txt到test

cat (catenate:连接,使...连成一串)

cat有3个能力

cat filename  打开叫filename的文件

cat > filname 创建叫filename的文件

cat filename1 filename2 > filemame3 合并filename1跟2 到 3 

which

which       查看可执行文件的位置。
whereis     查看文件的位置。
locate      配合数据库查看文件位置。
find        实际搜寻硬盘查询文件名称。

grep(Global Regular Expression Print:全局 正则 表达式 打印)

grep 的工作方式是这样的,它在一个或多个文件中搜索字符串模板。如果模板包括空格,则必须被引用,模板后的所有字符串被看作文件名。搜索的结果被送到标准输出,不影响原文件内容。

命令格式:

grep [option] pattern file|dir

常用参数:

-A n --after-context显示匹配字符后n行
-B n --before-context显示匹配字符前n行
-C n --context 显示匹配字符前后n行
-c --count 计算符合样式的列数
-i 忽略大小写
-l 只列出文件内容符合指定的样式的文件名称
-f 从文件中读取关键词
-n 显示匹配内容的所在文件中行数
-R 递归查找文件夹

grep 的规则表达式:

^  #锚定行的开始 如:'^grep'匹配所有以grep开头的行。 
$  #锚定行的结束 如:'grep$'匹配所有以grep结尾的行。 
.  #匹配一个非换行符的字符 如:'gr.p'匹配gr后接一个任意字符,然后是p。  
*  #匹配零个或多个先前字符 如:'*grep'匹配所有一个或多个空格后紧跟grep的行。
.*   #一起用代表任意字符。  
[]   #匹配一个指定范围内的字符,如'[Gg]rep'匹配Grep和grep。 
[^]  #匹配一个不在指定范围内的字符,如:'[^A-FH-Z]rep'匹配不包含A-R和T-Z的一个字母开头,紧跟rep的行。  
(..)  #标记匹配字符,如'(love)',love被标记为1。   
<      #锚定单词的开始,如:'<grep'匹配包含以grep开头的单词的行。
>      #锚定单词的结束,如'grep>'匹配包含以grep结尾的单词的行。
x{m}  #重复字符x,m次,如:'0{5}'匹配包含5个o的行。 
x{m,}  #重复字符x,至少m次,如:'o{5,}'匹配至少有5个o的行。  
x{m,n}  #重复字符x,至少m次,不多于n次,如:'o{5,10}'匹配5--10个o的行。  
\w    #匹配文字和数字字符,也就是[A-Za-z0-9],如:'G\w*p'匹配以G后跟零个或多个文字或数字字符,然后是p。  
\W    #\w的反置形式,匹配一个或多个非单词字符,如点号句号等。  
\b    #单词锁定符,如: '\bgrep\b'只匹配grep。

ps (process status : 进程状态)

用来查看当前运行的进程状态,一次性查看,如果需要动态连续结果使用 top

linux上进程有5种状态:

    1. 运行(正在运行或在运行队列中等待)
    1. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号)
    1. 不可中断(收到信号不唤醒和不可运行, 进程必须等待直到有中断发生)
    1. 僵死(进程已终止, 但进程描述符存在, 直到父进程调用wait4()系统调用后释放)
    1. 停止(进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后停止运行运行)

命令参数:

-A 显示所有进程
a 显示所有进程
-a 显示同一终端下所有进程
c 显示进程真实名称
e 显示环境变量
f 显示进程间的关系
r 显示当前终端运行的进程
-aux 显示所有包含其它使用的进程
ps -A 查看所有进程

kill(kill:————)

发送指定的信号到相应进程。不指定型号将发送SIGTERM(15)终止指定进程。如果任无法终止该程序可用"-KILL" 参数,其发送的信号为SIGKILL(9) ,将强制结束进程,使用ps命令或者jobs 命令可以查看进程号。root用户将影响用户的进程,非root用户只能影响自己的进程。

先使用ps查找进程pro1,然后用kill杀掉

kill -9 $(ps -ef | grep pro1)

free (free:免费了)就是花费了多少空间,我理解是这样,但是其实free()是C语言中释放内存空间的函数,so...

-b 以Byte显示内存使用情况
-k 以kb为单位显示内存使用情况
-m 以mb为单位显示内存使用情况
-g 以gb为单位显示内存使用情况
-s<间隔秒数> 持续显示内存
-t 显示内存使用的总和

先这么多吧!! www.linux.com/ 官网