Linux基本命令

1. pwd

显示当前工作目录。

2. cd

改变当前目录

1
2
3
cd -   #返回上一次所在的目录
cd ~ #回到家目录
cd .. #返回上级目录

3. ls

列出当前目录下的文件和子目录名

1
ls -l  #列出当前目录下的文件和目录的细节信息

略:关于细节信息表示的意思

4. echo

显示命令行参数(非常有用)

5. file

确定一个文件大致的类型与性质

6. man

获取在线帮助

阅读帮助信息时。可以用空格键向下翻页,用Ctrl-B想上翻页,用q退出帮助信息的阅读

Linux的各种在线帮助被分成了不同类别

Linux常用在线帮助的分类

级别 所包含的帮助类型
1 可执行文件和shell命令
2 系统调用
3 库函数
4 /dev中的设备
5 配置文件
6 游戏
7 宏包
8 管理员命令
9 非标准的内核进程
n 其他

例如,类别n,1和3中均有关于read的帮助信息,可以用man -a read将所有关于read的帮助信息找出来。

在man打印出来的帮助信息中,开始是命令或关键字的名称和一个简单描述(NAME),紧跟着是它的语法(SYNOPSIS),然后是其功能的详细介绍(DESCRIPTIOON),最后是命令行参数和选项的描述(OPTIONS)。常常还有一个叫做SEE ALSO的部分,列出和该命令相关的其他命令或关键字。

7. mkdir

创建一个新目录

makdir 文件名 #创建一个**目录

8. rm

删除文件或目录

1
2
3
touch newfile #建立一个新文件
rm newfile #删除文件
rm -rf newfile #-r表示按照目录树递归2操作,-f表示不做任何提示强制删除目录下的任何文件及子目录

9. cp

拷贝文件

cp 文件名 目录名

拷贝目录

cp -rf 文件名 目录名

10. mv

移动目录或者文件。参数类似于cp。

11. ln

为文件或目录建立链接(Link)。Linux系统中,一个文件或目录的链接对应于Windows中的快捷方式。

链接分为硬链接和软链接(符号链接)两种,默认创建硬链接,如果希望创建符号链接,则应该加上-s选项。一个文件的硬链接必须与原来的文件位于同一文件系统内(硬盘的同一个分区),而符号链接则无此限制。

ln -s /usr/include inc #为include文件创建符号链接inc

12. touch

改变文件的最后修改时间,该命令将文件的最后修改时间设置成为现在,或者任意指定的时间。

该命令也常被用来创建一个新的空文件

13. cat more less lv head tail

查看文件内容。这些命令用不同的方式显示文本文件的内容。cat将输入文件的内容链接起来输出到标准输出:more将输入文件分屏交互地显示出来:less是对more功能的增强:head显示输入文件的头十行或折叠数目的行:tail显示输入文件的最后十行或指定数目的行。这些命令支持一个或多个输入文件名作为参数。

各个参数有各种其他用法。

14. chmod chgrap chown

修改文件属性。chmod修改文件的权限位(常用),chgra修改文件所属的组,chowm则修改文件的属主。

chmod命令

修改文件访问权限是可以用文本或八进制两种方式来描述。

文本描述:

1
2
3
4
5
chmod [ugoa][+-][rwx] 文件名
[ugoa]:为四个字母,来修改那部分用户的权限,字母u,g,o,a分别表示属主、用户组、其他用户、所有用户
[+-]表示增加(+)还是去除(-)相应的权限
[rwx]读(r)写(2)执行(x)
chmod a+X 目录名 #会将当前目录中的虽有子目录加上执行权限,但不改变普通文件的执行权限

八进制快捷略

chgrap chown命令

1
2
3
都必须以root身份运行
chgrp 组名 文件名
chown 用户名 文件名

chattr lsattr命令

Linux中的文件还有attribute特性,命令chattr和lsattr用于修改和查看这些特性。

表示特性的字母 特性的含义
a 写操作的时候只能添加,不能删除现有内容
c 内核会自动对文件进行压缩
i 不能删除、移动、链接、写入
s 文件删除是,磁盘空间也会清理干净
S 修改时直接写入磁盘,而不是写在缓冲区中

15. ps kill nice renice top

查看和管理进程。ps命令可以看到现在正在运行的进程的信息:使用kil可以向某个进程发一个信号,通常用于改变进程的运行状态或杀死进程:使用nice和renice可以调整进程的优先级别,从而使得机器能够集中精力与更重要的进程:top则是几个交互式的查看系统状况的工具。

ps -u 用户组

kill 信号 进程号

信号名称 信号值 含义
HUP 1 挂起(hangup),挂断终端是产生
INT 2 中断(interrupt),按Ctrl-C键时产生
QUIT 3 退出(quit),按Ctrl-/键时产生
BUS 7 总线错误
KILL 9 强制性立即终止
SEGV 11 段错误
TERM 15 一般性终止
CONT 18 继续(continue)
STOP 19 暂停(STOP),按Ctrl-Z键时产生

nice -n 调整值 [命令[参数]] #系统管理员权限

运行top命令,屏幕就会成为一个字符界面的窗口,在中间显示系统各方面的情况,同时含可以进行交互式操作,按r键,可以交互地renice一个进程,按k键,可以杀死一个进程,还可以按m键查看内存的使用情况

16. &nohup

在后台运行程序。当运行一个比较花时间、而又不是非常急迫的程序时,介意把它放到后台去运行,只要在命令后面加上一个&就可以,关闭则在进程中杀死即可或者用17命令转到前台。如果希望在后台程序运行的同时退出系统。可以用nobhup命令来运行程序,避免从系统退出时程序被HUP信号杀掉

17. fg bg jobs

控制前台或者后台程序的运行。fg命令将一个后台运行的进程转到转到前台运行,bg则是是的一个进程在后台运行。jobs显示出当前shell中的所有作业及状态。

前台运行的一个程序需要很长的时间,但是需要干其他的事情,你就可以用 Ctrl-Z ,挂起这个程序,然后可以看到系统提示(方括号中的是作业号):

[1]+ Stopped /root/bin/rsync.sh

然后我们可以把程序调度到后台执行:(bg 后面的数字为作业号)

1
2
#bg 1
[1]+ /root/bin/rsync.sh &

用 jobs 命令查看正在运行的任务:

1
2
#jobs
[1]+ Running /root/bin/rsync.sh &

如果想把它调回到前台运行,可以用

1
2
#fg 1
/root/bin/rsync.sh

18. find locate

一般使用locate,它的工作原理是当计算机空闲时预先搜索文件系统,将文件信息保存在一个数据库中,当用户查找文件是,它直接查找数据库,而不是到硬盘中企业搜索。

locate/find (前面可加指定目录) 文件名

19. grep

寻找文本中的特定信息

grep 内容(以字符串) 文件

20. cut

分列处理文本。通过指定分隔符号来将句子分列,然后将指定的列提取出来

cut -d 查找符号 -f位置

21. tr

对文本中的字符进行替换。该命令将标准输入流中的字符进行一些简单的替换、缩并或者是删除操作。

tr -d 内容 文件

=d表示删除输入文本中的指定字符

22. who whoami id w

命令who和w显示出当前登录的所有用户的信息,whoami和id则显示当前用户的信息。

23. mount umount df

这些命令分别用来挂载、卸载文件系统和显示当前挂载的文件系统。Linux系统中可以同时使用多个文件系统,他们物理上可以位于不同的硬盘和硬盘分区或存储媒介上。在linux系统中,最主要的文件系统称为根文件系统,及包含根目录的文件系统。其他文件系统都被挂接在根文件系统的某级子目录中。这样,不论实际有多少个文件系统同时在使用,从逻辑结构上看整个文件系统依然是一个单一的树形结构。这一点和Windows系统有很大的不同。在Windows系统中,不同文件系统被映射成不同的逻辑分区,如C盘D盘,每个逻辑分区构成一个独立的树形结构。

挂载一个文件系统的命令是mount,卸载一个文件系统的命令是umount。这两条命令只有超级用户才有权力运行。命令df是显示出当年挂载的所有文件系统。

可以用如下命令挂载一个光盘映像文件:
mount -o loop **.iiso 挂载到的目录

24. bc

任意精度的计算器。在终端运行,通过命令行输入的计算器。