跳转至

Linux常用基础命令

使用方法:命令名 命令选项 命令参数

查看文件名命令: ls

  • –a列出所有文件,包括隐藏文件

    [userA@quantum ~]$ ls
    bin   chemsoft   setip.sh   temp   test
    [userA@quantum ~]$ ls -a
    .   ..   .bash_history  .bash_logout  .bash_profile  .bashrc   bin   chemsoft   setip.sh   temp   test
    

  • –l详细列出目录下文件的权限、所有者文件大小等详细信息,可以简单输入“ll”

    [userA@quantum ~]$ ls -l
    total 20
    drwxr-xr-x  5 userA chem 4096 Dec 31 22:33 bin
    drwxr-xr-x  9 userA chem 4096 Jan 15 21:12 chemsoft
    -rw-r--r--  1 userA chem  316 Jan  5 23:31 setip.sh
    drwxr-xr-x 12 userA chem 4096 Jan 19 23:57 temp
    drwxr-xr-x 13 userA chem 4096 Jan 19 23:52 test
    
    d rwxr-xr-x 13 userA chem 4096 Jan 19 23:52 test
    第一字段:文件类型; d为目录文件,-为普通文件,l为软链接,c为字符设备文件,b为块设备文件,s为套接字。
    第二字段:文件访问权限; 这里有9个字符,3个字符一组,共三组,分别代表属主(u, user)、属组(g, group)、其它人(o, other)的权限;r代表可读(权限数字为4),w代表可写(权限数字为2),x代表可执行(权限数字为1),-代表无权限(权限数字为0); rwxr-xr-x 可以表示为 4+2+1=7,4+1=5, 4+1=5,即755。
    第三字段:硬链接个数;
    第四字段:属主(owner),拥有该文件或目录的用户账号;
    第五字段:所归属的组(group),拥有该文件或目录的组账号;
    第六字段:文件或目录的大小, 默认单位 bytes;
    第七字段:最后访问或修改时间;
    第八字段:文件名或目录名。

  • –t依照最后修改文件时间列出文件名

    [userA@quantum ~]$ ls -l -t
    total 20
    drwxr-xr-x 12 userA chem 4096 Jan 19 23:57 temp
    drwxr-xr-x 13 userA chem 4096 Jan 19 23:52 test
    drwxr-xr-x  9 userA chem 4096 Jan 15 21:12 chemsoft
    -rw-r--r--  1 userA chem  316 Jan  5 23:31 setip.sh
    drwxr-xr-x  5 userA chem 4096 Dec 31 22:33 bin
    

切换用户当前目录: cd

  • 空格后直接跟相对路径或绝对路径

    [userA@quantum ~]$ cd test
    [userA@quantum test]$ cd orca/sge
    [userA@quantum sge]$ cd /home/userA/test/vasp
    [userA@quantum vasp]$
    

  • cd ~ 返回用户宿主目录(家目录),也相当于cd直接回车

    [userA@quantum vasp]$ cd ~
    [userA@quantum ~]$ cd test
    [userA@quantum test]$ cd
    [userA@quantum ~]$
    

查看用户当前所在位置: pwd

使用cd命令进入好多的目录这时我们不清楚所在的目录位置,这时就可以使用pwd查看

[userA@quantum soc]$ pwd
/home/userA/test/orca/soc

创建文件夹目录: mkdir

  • 可单独创建目录,也可同时创建多个目录

    [userA@quantum tmp]$ mkdir d1
    [userA@quantum tmp]$ mkdir d2 d3 d4
    [userA@quantum tmp]$ ls
    d1   d2   d3   d4
    

  • 使用绝对路径创建目录

    [userA@quantum tmp]$ mkdir d1/test
    [userA@quantum tmp]$ ls d1/
    test
    

  • -p连续创建目录及子目录

    [userA@quantum tmp]$ mkdir -p a/b/c
    [userA@quantum tmp]$ ls a/
    b
    [userA@quantum tmp]$ ls a/b
    c
    

创建文件命令: touch

在当前文件夹下创建,也可在绝对路径文件夹下创建

[userA@quantum tmp]$ touch 1.txt
[userA@quantum tmp]$ ls
1.txt   d1   d2   d3   d4
[userA@quantum tmp]$ touch d1/2.txt
[userA@quantum tmp]$ ls d1/
2.txt   test
[userA@quantum tmp]$ touch /home/userA/tmp/a/b/c/3.txt
[userA@quantum tmp]$ ls /home/userA/tmp/a/b/c/
3.txt

复制文件或文件夹命令: cp

  • 可复制单个或多个文件到其他目录

    [userA@quantum tmp]$ cp 1.gjf d1/
    [userA@quantum tmp]$ cp 2.gjf 3.gjf d1/
    [userA@quantum tmp]$ ls d1/
    1.gjf   2.gjf   2.txt   3.gjf   test
    

  • -r复制文件夹

    [userA@quantum tmp]$ cp -r a d1/
    [userA@quantum tmp]$ ls d1/
    1.gjf   2.gjf   2.txt   3.gjf   a   test
    [userA@quantum tmp]$ cp -r /home/userA/tmp/a /home/userA/tmp/d2/
    [userA@quantum tmp]$ ls d2/
    a
    

删除文件及文件夹命令: rm

-r删除文件夹;-f强制删除;-rf强制删除文件夹

[userA@quantum tmp]$ ls
1.gjf   1.txt   2.gjf   3.gjf   a   d1   d2   d3   d4
[userA@quantum tmp]$ rm 1.txt
[userA@quantum tmp]$ rm -f 1.gjf
[userA@quantum tmp]$ rm -r d3
[userA@quantum tmp]$ ls
2.gjf   3.gjf   a   d1   d2   d4
[userA@quantum tmp]$ rm d1/1.gjf
[userA@quantum tmp]$ ls d1/
2.gjf   2.txt   3.gjf   a   test

移动文件或者重命名: mv

在同一目录下移动为重命名;其他目录为移动

[userA@quantum tmp]$ ls
2.gjf   3.gjf   a   d1   d2   d4
[userA@quantum tmp]$ mv 2.gjf 2.txt
[userA@quantum tmp]$ ls
2.txt   3.gjf   a   d1   d2   d4
[userA@quantum tmp]$ ls d4
[userA@quantum tmp]$ mv 2.txt d4/
[userA@quantum tmp]$ ls
3.gjf   a   d1   d2   d4
[userA@quantum tmp]$ ls d4
2.txt

查看文件内容命令: cat

[userA@quantum tmp]$ cat 1.txt
hello

more和less命令

文件比较大时,使用cat不方便,用more和less可以分屏翻页阅读,空格键下一页,b上一页,q退出阅读。

head和tail命令

head与tail就像它们的名字一样的浅显易懂,分别用来显示文件开头或结尾至标准输出中。 默认是查看10行,可以加上“-数字”代表查看“数字”行,比如:-8,查看8行;-20,查看20行。

[userA@quantum tmp]$ head -8 1.gjf 
%chk=1.chk
%mem=16GB
%nprocshared=12
#p opt pbe1pbe/6-31g** freq scrf=(smd, solvent=thf) test

opt

0 1
[userA@quantum tmp]$ tail 1.log 
 0.00000083,0.00000023,0.00000692,-0.00000258,0.00000088,0.00000523,-0.
 00000221,-0.00000634,0.00000584\\\@


 THERE IS MORE TO LIFE THAN INCREASING ITS SPEED.

                                       -- GANDHI
 Job cpu time:       0 days  6 hours 19 minutes 47.2 seconds.
 File lengths (MBytes):  RWF=   3711 Int=      0 D2E=      0 Chk=     58 Scr=      1
 Normal termination of Gaussian 09 at Tue Apr  2 18:57:10 2024.

文件或目录的查找: find

  • 基本命令格式:find [path] [expression]

    [userA@quantum ~]$ find /home/userA -name irppy_soc.inp
    /home/userA/test/orca/tddftsoc/irppy_soc.inp
    

  • 查找超过500M的文件,并删除,或者选择性删除

    [userA@quantum ~]$ find ./ -size +500M
    ./test/sge/s14a.chk
    ./test/s14a.chk
    ./temp/orca_4_1_0_1inux_x86-64_openmpi215.tar
    ./temp/parallel_studio_xe_2017_update4.tqz
    [userA@quantum ~]$ find ./ -size +500M |grep -v orca
    ./test/sge/s14a.chk
    ./test/s14a.chk
    ./temp/parallel_studio_xe_2017_update4.tgz
    [userA@quantum ~]$ find ./ -size +500M |grep -v orca |xargs rm -f
    
    写个脚本选择性删除
    [userA@quantum ~]$ cat rm500m.sh
    #!/bin/bash
    rm -f ./test/sge/s14a.chk
    rm -f ./test/s14a.chk
    [userA@quantum ~]$ ll rm500m.sh
    -rw-r--r-- 1 userA chem 60 Jan 20 13:34 rm500m.sh
    [userA@quantum ~]$ chmod +x rm500m.sh
    [userA@quantum ~]$ ll rm500m.sh
    -rwxr-xr-x 1 userA chem 60 Jan 20 13:34 rm500m.sh
    [userA@quantum ~]$ ./rm500m.sh
    

vim编辑器使用

基本命令格式:vi 文件名

  • 翻页:shift+G翻到最后; GG翻到最开始; Ctrl+F向前翻页; Ctrl+B向后翻页。
  • 输入模式:i进入INSERT输入模式,Esc退出输入模式,q不保存退出,wq保存后退出。
  • 删除操作:dd删除光标所在行,3dd从当前行开始向下删除三行文本。
  • 复制操作:2yyp复制2行,yy3p复制光标当前行3次。
  • 撤销操作:u取消最近一次的操作,可以使用多次来恢复原有的操作。
  • 查找操作:/要查找的字符窜;n下一个, Shift+n上一个。
  • 替换操作::%s/old/new/g用new替换整篇中出现的old。
本文阅读量  次
本站总访问量  次