【Linux】必会! 常用又简单的10个命令

目录

一、cp 复制文件或目录

二、mv 为文件/目录改名、或移动文件/目录的位置

三、rm 删除一个文件或目录

四、ls 显示指定目录下的内容

五、touch 创建文件和修改文件或目录的时间属性

六、mkdir 创建目录

七、su 与 su - 与sudo 切换用户身份

八、alias 设置指令的别名

九、kill 删除执行中的程序

十、其它命令--clear、who


一、cp 复制文件或目录

把一个、或多个源文件、或源目录复制到指定的文件或目录中

1、语法:cp [options] source dest

2、常用参数说明:

-f:覆盖已经存在的目标文件而不给出提示。

-i:与-f 选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答"y"时目标文件将被覆盖。

-r,-R:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。

3、实例

(1)文件a.txt------->b.txt(不存在的):

cp a.txt b.txt

结果是新建b.txt文件,并把a.txt的内容复制到b.txt中。

(2)文件a.txt------->b.txt(存在的):

cp a.txt b.txt

结果是用a.txt的内容覆盖b.txt原有的内容。

但是,中间会提示:cp: overwrite ‘b.txt’? y

为什么会提示呢?因为linux系统默认对cp命令做了别名alias cp='cp =i',若不想使用别名可使用\cp a.txt b.txt

(3)文件a.txt------>目录cptest:

cp a.txt cptest/

结果是在cptest目录下创建同名同内容的a.txt。

(4)复制文件a.txt,b.txt,c.txt到目录cptest中:

cp a.txt b.txt c.txt cptest

结果是把a b c文件同时复制到cptest目录下。

注意:cp多个文件时,文件中间只能有一个空格!且目标必须存在且必须是目录,其它均出错!

(5)目录dir1-------->目录dir2

cp -r dir1 dir2

注意:复制目录时,必须使用参数"-r"或者"-R"

(6)复制多个目录dir1,dir2,dir3到dir4

cp -r dir1 dir2 dir3 dir4

注意:复制多目录时,目标目录必须存在,否则复制失败!

(7)将当前目录"test/"下的所有文件复制到新目录"newtest"下:

$ cp –r test/ newtest

二、mv 为文件/目录改名、或移动文件/目录的位置

mv [options] source dest

-i: 若指定目录已有同名文件,则先询问是否覆盖旧文件;

-f: 要覆盖某已有的目标文件时不给任何指示,直接覆盖。

命令格式

运行结果

mv 文件名 文件名

文件改名,将源文件名改为目标文件名

mv 文件名 目录名

文件移动,将文件移动到目标目录

mv 目录名 目录名

对目录改名or移动;

目标目录已存在,将移动到目标目录;不存在则改名

mv 目录名 文件名

出错

三、rm 删除一个文件或目录

-i 删除前逐一询问确认。

-f 强制删除;即使原档案属性设为唯读,亦直接删除,无需逐一确认。

-r 将目录及以下之档案亦逐一删除,若删除目录则必须加-r

文件一旦通过rm命令删除,则无法恢复,所以必须格外小心地使用该命令!

四、ls 显示指定目录下的内容

ls 默认只显示当前目录下的所有文件或目录的名称

ls -l 在linux中默认被设置为别名 ll,除文件名称外,也列出文件类型、权限、大小等详细信息

ls -t 按文件建立时间先后次序列出,新文件在前

ls -a 把隐藏文件和目录也显示出来

ls -R 把目录下的子目录中的文件或子子目录内容全部都显示出来

五、touch 创建文件和修改文件或目录的时间属性

1、语法:touch [options] filename

2、touch filename 当文件filename不存在时,会创建一个空白文件

3、touch file1/dir1 当文件或目录存在时,修改它们的时间属性为当前系统时间

     (可通过ll 命令来查看文件/目录的时间属性)

4、也可以带参数,修改文件或目录的最近访问时间、修改时间等等

六、mkdir 创建目录

1、命令格式:mkdir 【选项】【文件名】

2、命令参数

  使用帮助命令:man mkdir或mkdir -help

  -m --mode=模式,设定权限<模式> (类似 chmod)

  -p --parents 递归创建目录

  -v, --verbose 每次创建新目录都显示信息

3、命令实例

创建一个空目录abc:mkdir abc

递归创建多个目录:mkdir -p test/test1/test2

创建目录时显示日志信息:mkdir -v test3

创建权限为777的目录:mkdir -m 777 hao

七、su 与 su - 与sudo 切换用户身份

用于变更为其它使用者的身份,除 root 外,需要键入该使用者的密码。

1、su app

从当前用户切换到app用户,但是还在当前用户的目录下,即没有改变用户的环境。

2、su - root

从当前用户切换到root用户,并且转到root用户的家目录下,即改变到了root用户的环境。

3、sudo 执行命令

   管理员授权一些普通用户去执行一些root执行的操作,而不需要知道root密码。

   sudo vim /etc/group,在该文件的 sudo 组中加入新的授权用户,多个用户间使用逗号分隔,从而使新用户具有sudo权限。

    在 /etc/sudoers 文件中配置安全策略(授权用户可以做什么,不可以做什么),在配置行中添加NOPASSWD,去掉密码验证: ALL=(ALL) NOPASSWD: ALL

 

八、alias 设置指令的别名

alias [别名]=[指令名称]

alias 别名:显示出别名代表的指令

alias 若不加任何参数,则列出目前所有的别名设置。

若要每次登入是即自动设好别名,可在.profile或.cshrc中设定指令的别名

 

unalias命令用于删除别名

unalias [-a][别名]

unalias 别名----删除指定别名

unalias -a 删除全部别名,慎用!

九、kill 删除执行中的程序

1、杀死指定pid的进程

kill 12345

2、强制杀死进程

kill -KILL 12345

3、彻底杀死进程

kill -9 12345

十、其它命令--clear、who

1、clear:清除屏幕,没有参数

2、who:显示系统中有哪些使用者正在上面,不带参数即可;

               who -H 显示出各列的标题信息。

猜你喜欢

转载自blog.csdn.net/lijing742180/article/details/83176136