Shell命令是在类Unix操作系统中使用的命令行解释器(shell)中执行的命令。Shell命令可以用于执行系统命令、操作文件、进行文本处理、管理进程等。以下是一些常见的Shell命令:
-
`ls`:列出当前目录下的文件和文件夹。
-
`cd`:切换当前工作目录。
-
`pwd`:显示当前工作目录的路径。
-
`mkdir`:创建一个新目录。
-
`rm`:删除文件或目录。
-
`cp`:复制文件或目录。
-
`mv`:移动文件或目录,也可用于重命名。
-
`cat`:显示文件内容。
-
`more`:逐页显示文件内容。
-
`less`:与`more`类似,但支持向前和向后翻页。
-
`head`:显示文件的前几行。
-
`tail`:显示文件的后几行。
-
`grep`:在文件中搜索指定的模式。
-
`find`:按照指定条件查找文件。
-
`chmod`:修改文件权限。
-
`chown`:修改文件所有者。
-
`chgrp`:修改文件所属组。
-
`ps`:显示当前运行进程的状态。
-
`top`:实时显示系统中运行的进程和资源占用情况。
-
`kill`:终止指定的进程。
-
`wget`:从网络上下载文件。
-
`tar`:打包和解压文件。
-
`zip`和`unzip`:压缩和解压缩文件。
-
`ssh`:远程登录到另一台主机。
-
`scp`:在本地主机和远程主机之间复制文件。
继续上面的Shell命令介绍:
-
`chmod`:修改文件或目录的权限。
-
`chown`:修改文件或目录的所有者。
-
`chgrp`:修改文件或目录的所属组。
-
`ps`:列出当前运行的进程。
-
`top`:实时显示系统资源使用情况和运行的进程。
-
`kill`:终止指定的进程。
-
`wget`:从网络上下载文件。
-
`curl`:发送HTTP请求并获取响应内容。
-
`tar`:打包和解压文件。
-
`zip`和`unzip`:压缩和解压文件。
-
`ssh`:远程登录到另一台主机。
-
`scp`:在本地主机和远程主机之间复制文件。
-
`echo`:在终端输出文本或变量的值。
-
`export`:设置环境变量。
-
`history`:查看命令历史记录。
-
`alias`:创建命令别名。
-
`sed`:使用正则表达式进行文本处理。
-
`awk`:强大的文本处理工具。
-
`cut`:从文本中提取指定的列。
-
`sort`:对文本进行排序。
-
`uniq`:删除或统计重复的行。
-
`wc`:统计文件或文本的行数、字数和字符数。
-
`grep`:在文本中搜索指定的模式。
-
`tee`:将输出内容同时显示在终端和写入文件。
-
`ifconfig`:显示和配置网络接口信息。
-
`netstat`:显示网络连接和路由表。
-
`ping`:测试与目标主机的连通性。
-
`traceroute`:跟踪数据包的路径。
这只是一小部分常见的Shell命令,Shell在功能和灵活性方面非常丰富。要更多了解每个命令的详细用法和选项,可以使用命令的`man`页(例如:`man ls`)阅读其手册。此外,在互联网上还有许多Shell命令的教程和实例供参考。
变量叠加:
cpp
[root@localhost ~]$ test=123
[root@localhost ~]$ test="$test"456
[root@localhost ~]$ echo $test
123456
#叠加变量test,变量值变成了123456
[root@localhost ~]$ test=${test}789
[root@localhost ~]$ echo $test
123456789
#再叠加变量test,变量值编程了123456789
readonly a #只读变量
expr 算数运算符
cpp
[root@localhost ~]$ vi computers.sh
#!/bin/bash
a=10
b=20
echo ' '
echo 'a+b= ' `expr $a + $b`
echo 'a-b= ' `expr $a - $b`
echo 'a*b= ' `expr $a \* $b`
echo 'a/b= ' `expr $a / $b`
echo 'a%b= ' `expr $a % $b`
#判断是否相等
if [ $a == $b ]
then
echo 'a等于b'
else
echo 'a不等于b'
fi
不支持字符串