常用命令行

目录

目录(路径)中最左边的/代表根目录,.代表当前目录,..代表上一级目录。一般一个路径有两种表示方法,相对路径和绝对路径:

  • 绝对路径 从根路径开始的目录树位置,例如/usr/opera/bin/
  • 相对路径 从当前路径开始的目录位置,例如当前路径为/root,则../usr/opera/bin/与上面的绝对路径是相同的

命令搜索路径

Shell或在Shell程序中的指令,可以是Shell内置的程序控制指令,也可是操作系统指令,外部用户程序等。若为外部的用户程序,需确保该程序所在路径(目录)在系统或用户的搜索路径中,或指明完整的程序路径方可运行。Windows操作系统的搜索路径,自动把当前路径包含进去,而Linux的搜索路径较为不同,不会自动把当前的路径包含进去。因此除非在系统默认搜索路径下(一般包含/usr/bin,/usr/local/bin;/bin;/usr/sbin;/usr/local/sbin;/sbin),一般我们执行命令时,会在命令前加上命令所在路径,例如./stop.sh,指当前路径下的stop.sh程序。

ls 命令

默认不使用参数时,以字母排序列出当前路径(目录)下的文件和目录名,以.开头的文件或目录不会列出来。

若想列出所有文件,包括.开头的文件或目录名,则可使用-a(all)参数

ls -a

以长列表格式列出文件,使用-l(long)参数

ls -l

会以更详细的形式输出的列表结果,一般会有如下形式的结果 ls -l

每行的开头一段,例如-r-xr-xr-x表示了该文件的访问权限。文件访问权限有三种:

  • r 为读取
  • w 为可写
  • x 为可执行

三种访问级别:

  • u 为文件所有
  • g 为文件所有者所在的组
  • o 为不在本组中的其他用户,即所有其他人

文件访问权限中,第一个字符,若为d代表是目录,若为-代表文件,后面9个字符,分三组,分别对应ugo三个组的权限。三位中,依次权限是rwx,若为对应字符,则代表有这个权限,若对应为-,表示无此访问权限。文件若需可以作为程序执行,则调用文件的用户必须具备读和执行权限。

chmod 命令

改变文件的访问权限,或称属性(change modifier)。 访问权限可用上述ls -l列出。若当前用户有足够权限,可用chmod来修改访问权限。 例如文件file1的访问权限如下,

-rw-r--r--

代表文件所有者可读写,文件所有者所在组的其它人可读,其它任何人都可读。若要让文件所有者和其所在组的用户都可以执行,则使用以下几种指令是相同的

chmod ug+x file1

上面的+代表增加这项权限,若要限制这个权限,使用-号。

chmod u=rwx,g=rx,o=r file1
chmod 754 file1

最后这个754,对应于rwxr-xr--,用二进制对应为111 101 100,用八进制表示即为754

文件名也可用通配符来表示,若加上参数-R(recursive),表示改变当前目录及递归子目录下的文件访问权限。例如

chmod -R 777 *

表示把当前目录下和递归其下所有子目录中的文件访问权限设置为任何人可读、写、执行。

pwd 命令

列出当前路径,例如

pwd

若显示出来为/root,表示当前路路径在这个位置

cd 命令

这个命令是改变当前路径(目录)的命令,例如把当前的路径改变到上一级目录。

若原来当前路径是/home/atc,使用

cd ..

执行上述命令后,当前路径就变成了/home。 也可使用绝对路径名改变当前路径到其它地方

cd /project/bin

cp 命令

复制文件指令。

cp <源文件> <目标文件>

复制源文件成目标文件,可带上路径。

cp -r <源目录> <目标目录>

参数-r(recursive)表示复制目录,递归包括其下的子目录。

mv 命令

mv <源文件> <目标文件>

若<目标文件>是一个已存在的目录,这个是把源文件源目录移动(move)到已存在的目标目录下,否则就是把源文件重新改名(rename)为目标文件

rm 命令

这个命令操作会造成风险哦,若使用一定要确认!

rm <文件>

从系统中删除文件

rm -r <目录>

从系统中删除目录及其子目录

ps 命令

报告当前运行的进程(运行中的程序),默认只列出当前用户的所有进程,若想列出全部的进程,可使用参数-A(all)来调用。

ps -A

grep 命令

文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来,正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。例如我们想得到是否运行名称包含ato字符串的程序,可通过管道(|)在ps -A命令的输出结果中搜索

ps -A | grep ato

date 命令

显示或设置日期时间,不带参数显示当前日期和时间,带参数可设置当前时间。该指令在不同的操作系统可能略有不同,例如在DLU中设置时间的指令为

date  MMDDHHmmYYYY

其中MM代表两位数的月份,DD代表两位数的天数,HH代表24小时制两位小时数,mm代表两位分钟数,YYYY代表四位年份。

一般在设置了日期时间后,为保证系统重启后仍能有效,需通过指令

hwclock -w

来同步主板的硬件时钟。

ifconfig 命令

ifconfig是用来管理网络的命令。

当不带参数时,会显示出当前启用的网卡信息。

  • ifconfig -a 显示所有网卡的信息(包括未启用的)
  • ifconfig eth0 显示网卡1(在多数系统中命名为eth0)的信息
  • ifconfig eth0 10.23.214.40/24 把第一网卡的IP设置为10.23.214.40,掩码为24位(即255.255.255.0)
  • ifconfig eth0:1 10.92.1.25/24 设置第一块网卡的第二个IP为10.92.1.25,掩码为24位

ping 命令

测试网络连通性,例如

ping corepu_a

ping 10.65.1.25

向指定主机发送ICMP数据包,看能否返回响应。

PING corepu_a (10.65.1.25) 56(84) bytes of data.
64 bytes from 10.65.1.25: icmp_seq=0 ttl=150 time=2.51 ms
64 bytes from 10.65.1.25: icmp_seq=1 ttl=150 time=3.16 ms
64 bytes from 10.65.1.25: icmp_seq=2 ttl=150 time=2.71 ms
64 bytes from 10.65.1.25: icmp_seq=3 ttl=150 time=2.67 ms

显示出time值,代表目标主机的响应时间,若不出现time值,基是出现

Request timed out.

表示网络不通。

Destination Host Unreachable

表示路由不通。

reboot

若有足够的用户执行权限,reboot是重新启动系统的命令。在有些操作系统中,可能存在等价的init 6shutdown -r命令。

mount

若用户具备硬件操作权限,可以通过该指令把磁盘、分区或是文件挂载(连接到)指定目录树下,作为一个目录树分支。一般语法为

mount [选项] [<磁盘分区或文件> <挂载目录>]

umount

若用户具备硬件操作权限,且没有被挂载点目录树下文件被使用,则可以卸载所挂载的磁盘分区

umount <硬盘分区或文件|挂载目录>

df

这个指令显示文件系统的使用或空闲情况(disk free),可带一些参数,例如下面这个显示的使用量以用户较易辨认的形式

df -h

du

这个指令显示文件系统的使用情况(disk used),包括目录等

results matching ""

    No results matching ""