Linux系列(3)- Linux 高级命令 (二)

46 阅读1分钟

「4月日新计划更文活动」

高级命令

netstat

显示网络连接状态。例如,要显示当前系统中所有的网络连接状态,可以执行以下命令。

$ netstat -a

du

查看目录占用的磁盘空间。例如,要查看 /home/username/Documents 目录占用的磁盘空间,可以执行以下命令。

$ du -sh /home/username/Documents

其中,-s 表示只显示总和,-h 表示以可读性更好的格式显示文件大小。

df

查看磁盘分区的使用情况。例如,要查看当前系统中所有磁盘分区的使用情况,可以执行以下命令。

$ df -h

其中,-h 参数表示以可读性更好的格式显示磁盘使用情况。

chmod

修改文件或目录的权限。例如,要将 file.txt 文件设置为只读权限,可以执行以下命令。

$ chmod 444 file.txt

其中,数字 4 表示只读权限,数字 2 表示写权限,数字 1 表示执行权限。数字 4+2+1=7 表示读、写和执行权限。

chown

修改文件或目录的所有者和所属组。例如,要将 file.txt 文件的所有者和所属组都修改为 username,可以执行以下命令。

$ chown username:username file.txt

su

切换用户身份。例如,要以 root 用户身份登录,可以执行以下命令。

$ su -

需要输入 root 用户的密码才能切换成功。

sudo

以特权用户的身份执行命令。例如,要以 root 用户身份执行 apt-get update 命令,可以执行以下命令。

$ sudo apt-get update

需要输入当前用户的密码才能执行成功。

ssh-keygen

生成 SSH 密钥对。例如,要生成一个新的 SSH 密钥对,并将公钥添加到远程服务器上,可以执行以下命令。

$ ssh-keygen
$ ssh-copy-id username@remote_host

其中,username 是远程服务器的用户名,remote_host 是远程服务器的 IP 地址或域名。

scp

通过 SSH 协议传输文件。例如,要将本地目录 /home/username/Documents 中的所有文件和子目录复制到远程服务器上的 /home/username/Documents 目录中,可以执行以下命令。

$ scp -r /home/username/Documents username@remote_host:/home/username/

其中,-r 参数表示递归复制整个目录结构。

rsync

增量同步本地和远程目录。例如,要将本地目录 /home/username/Documents 同步到远程服务器上的 /home/username/Documents 目录中,可以执行以下命令。

$ rsync -avz /home/username/Documents/ username@remote_host:/home/username/Documents/

其中,-a 参数表示以归档模式同步,保留所有文件属性,-v 参数表示显示详细信息,-z 参数表示使用压缩传输数据。

screen

在单个终端窗口中打开多个会话。例如,要在一个屏幕会话中同时运行多个命令,可以执行以下命令。

$ screen
$ command1
Press CTRL+a, then d to detach from the screen session.
$ command2
$ screen -r

第一个命令 screen 开启了一个新的屏幕会话,可以在其中运行多个命令。

按下 CTRL+a 键,然后再按下 d 键,即可从当前屏幕会话中分离出来,但不会停止正在运行的命令。

执行第二个命令 command2 后,可以使用 screen -r 命令重新连接到之前的屏幕会话中,继续进行操作。

wc

能统计指定文件的文件中字节数、字数、行数、并将统计结果输出

$ wc file.txt