1、mkdir 用来创建目录
mkdir命令 用来创建目录。该命令创建由dirname命名的目录。如果在目录名的前面没有加任何路径名,则在当前目录下创建由dirname指定的目录;如果给出了一个已经存在的路径,将会在该目录下创建一个指定的目录。在创建目录时,应保证新建的目录与它所在目录下的文件没有重名。
注意:在创建文件时,不要把所有的文件都存放在主目录中,可以创建子目录,通过它们来更有效地组织文件。最好采用前后一致的命名方式来区分文件和目录。例如,目录名可以以大写字母开头,这样,在目录列表中目录名就出现在前面。
在一个子目录中应包含类型相似或用途相近的文件。例如,应建立一个子目录,它包含所有的数据库文件,另有一个子目录应包含电子表格文件,还有一个子目录应包含文字处理文档,等等。目录也是文件,它们和普通文件一样遵循相同的命名规则,并且利用全路径可以唯一地指定一个目录。
实例:
在目录/usr/meng下建立子目录test,并且只有文件主有读、写和执行权限,其他人无权访问
mkdir -m 700 /usr/meng/test
在当前目录中建立bin和bin下的os_1目录,权限设置为文件主可读、写、执行,同组用户可读和执行,其他用户无权访问
mkdir -p-m 750 bin/os_1
2、chmod 用来变更文件或目录的权限
- 通过符号组合的方式更改目标文件或目录的权限。
- 通过八进制数的方式更改目标文件或目录的权限。
- 通过参考文件的权限来更改目标文件或目录的权限。
实例:
参考man chmod文档的DESCRIPTION段落得知:
u符号代表当前用户。
g符号代表和当前用户在同一个组的用户,以下简称组用户。
o符号代表其他用户。
a符号代表所有用户。
r符号代表读权限以及八进制数4。
w符号代表写权限以及八进制数2。
x符号代表执行权限以及八进制数1。
X符号代表如果目标文件是可执行文件或目录,可给其设置可执行权限。
s符号代表设置权限suid和sgid,使用权限组合u+s设定文件的用户的ID位,g+s设置组用户ID位。
t符号代表只有目录或文件的所有者才可以删除目录下的文件。
+符号代表添加目标用户相应的权限。
-符号代表删除目标用户相应的权限。
=符号代表添加目标用户相应的权限,删除未提到的权限。
linux文件的用户权限说明:
# 查看当前目录(包含隐藏文件)的长格式。
ls -la
-rw-r--r-- 1 user staff 651 Oct 12 12:53 .gitmodules
# 第1位如果是d则代表目录,是-则代表普通文件。
# 更多详情请参阅info coreutils 'ls invocation'(ls命令的info文档)的'-l'选项部分。
# 第2到4位代表当前用户的权限。
# 第5到7位代表组用户的权限。
# 第8到10位代表其他用户的权限。
# 添加组用户的写权限。
chmod g+w ./test.log
# 删除其他用户的所有权限。
chmod o= ./test.log
# 使得所有用户都没有写权限。
chmod a-w ./test.log
# 当前用户具有所有权限,组用户有读写权限,其他用户只有读权限。
chmod u=rwx, g=rw, o=r ./test.log
# 等价的八进制数表示:
chmod 764 ./test.log
# 将目录以及目录下的文件都设置为所有用户拥有读写权限。
# 注意,使用'-R'选项一定要保留当前用户的执行和读取权限,否则会报错!
chmod -R a=rw ./testdir/
# 根据其他文件的权限设置文件权限。
chmod --reference=./1.log ./test.log
注意
-
该命令是
GNU coreutils
包中的命令,相关的帮助信息请查看man chmod
或info coreutils 'chmod invocation'
。 -
符号连接的权限无法变更,如果用户对符号连接修改权限,其改变会作用在被连接的原始文件。
-
使用
-R
选项一定要保留当前用户的执行和读取权限,否则会报错!
3、chown 用来变更文件或目录的拥有者或所属群组
chown命令 改变某个文件或目录的所有者和所属的组,该命令可以向某个用户授权,使该用户变成指定文件的所有者或者改变文件所属的组。用户可以是用户或者是用户D,用户组可以是组名或组id。文件名可以使由空格分开的文件列表,在文件名中可以包含通配符。
只有文件主和超级用户才可以便用该命令。
实例:
将目录/usr/meng及其下面的所有文件、子目录的文件主改成 liu:
chown -R liu /usr/meng
4、cat 连接多个文件并打印到标准输出
- 显示文件内容,如果没有文件或文件为
-
则读取标准输入。 - 将多个文件的内容进行连接并打印到标准输出。
- 显示文件内容中的不可见字符(控制字符、换行符、制表符等)。
实例:
# 合并显示多个文件
cat ./1.log ./2.log ./3.log
# 显示文件中的非打印字符、tab、换行符
cat -A test.log
# 压缩文件的空行
cat -s test.log
# 显示文件并在所有行开头附加行号
cat -n test.log
# 显示文件并在所有非空行开头附加行号
cat -b test.log
# 将标准输入的内容和文件内容一并显示
echo '######' |cat - test.log
注意
- 该命令是
GNU coreutils
包中的命令,相关的帮助信息请查看man -s 1 cat
或info coreutils 'cat invocation'
。 - 当使用
cat
命令查看体积较大的文件时,文本在屏幕上迅速闪过(滚屏),用户往往看不清所显示的内容,为了控制滚屏,可以按Ctrl+s
键停止滚屏;按Ctrl+q
键恢复滚屏;按Ctrl+c
(中断)键可以终止该命令的执行,返回Shell提示符状态。 - 建议您查看体积较大的文件时使用
less
、more
命令或emacs
、vi
等文本编辑器。
5、echo 输出指定的字符串或者变量
echo命令 用于在shell中打印shell变量的值,或者直接输出指定的字符串。linux的echo命令,在shell编程中极为常用, 在终端下打印变量value的时候也是常常用到的,因此有必要了解下echo的用法echo命令的功能是在显示器上显示一段文字,一般起到一个提示的作用。
实例:
用echo命令打印带有色彩的文字:
文字色:
echo -e "\e[1;31mThis is red text\e[0m"
This is red text
\e[1;31m 将颜色设置为红色
\e[0m 将颜色重新置回
颜色码:重置=0,黑色=30,红色=31,绿色=32,黄色=33,蓝色=34,洋红=35,青色=36,白色=37
背景色 :
echo -e "\e[1;42mGreed Background\e[0m"
Greed Background
颜色码:重置=0,黑色=40,红色=41,绿色=42,黄色=43,蓝色=44,洋红=45,青色=46,白色=47
文字闪动:
echo -e "\033[37;31;5mMySQL Server Stop...\033[39;49;0m"
红色数字处还有其他数字参数:0 关闭所有属性、1 设置高亮度(加粗)、4 下划线、5 闪烁、7 反显、8 消隐
6、wc 统计文件的字节数、字数、行数
wc命令 统计指定文件中的字节数、字数、行数,并将统计结果显示输出。利用wc指令我们可以计算文件的Byte数、字数或是列数,若不指定文件名称,或是所给予的文件名为“-”,则wc指令会从标准输入设备读取数据。wc同时也给出所指定文件的总统计数。
实例:
wc -l * # 统计当前目录下的所有文件行数及总计行数。
wc -l *.js # 统计当前目录下的所有 .js 后缀的文件行数及总计行数。
find . * | xargs wc -l # 当前目录以及子目录的所有文件行数及总计行数。
查看文件的字节数、字数、行数
wc test.txt
# 输出结果
7 8 70 test.txt
# 行数 单词数 字节数 文件名
用wc命令怎么做到只打印统计数字不打印文件名
wc -l < test.txt
# 输出结果
7
用来统计当前目录下的文件数(不包含隐藏文件)
# 要去除TOTAL行
expr $(ls -l | wc -l) - 1
# 输出结果
8
统计当前目录下的所有文件行数及总计行数
[root@centos7 ~]# wc -l *
21 LICENSE
270 README.md
wc: example: read: Is a directory
785 lerna-debug.log
25 lerna.json
wc: node_modules: read: Is a directory
23603 package-lock.json
79 package.json
3 renovate.json
24786 total
7、man 查看Linux中的指令帮助
man命令 是Linux下的帮助指令,通过man指令可以查看Linux中的指令帮助、配置文件帮助和编程帮助等信息。
实例:
我们输入man ls,它会在最左上角显示“LS(1)”,在这里,“LS”表示手册名称,而“(1)”表示该手册位于第一节章,同样,我们输man ifconfig它会在最左上角显示“IFCONFIG(8)”。也可以这样输入命令:“man [章节号] 手册名称”。
man是按照手册的章节号的顺序进行搜索的,比如:
man sleep
只会显示sleep命令的手册,如果想查看库函数sleep,就要输入:
man 3 sleep
8、history 显示或操作历史列表。
-
显示历史列表。
-
操作历史列表。
实例:
使用history命令显示最近使用的10条历史命令
[root@localhost ~]# history 10
92 ls
93 cd ..
94 ls
95 exit
96 ls -a
97 cd .ssh/
98 ls
99 cat known_hosts
100 exit
101 history 10
清空历史记录
[root@localhost ~]# history -c
更多实例:
# 执行第 n 条历史命令
[root@localhost ~]# !n
# 执行最后一条 xxx 开头的命令
[root@localhost ~]# !xxx
注意
- 在命令行中,可以使用符号
!
执行指定序号的历史命令。例如,要执行第2个历史命令,则输入!2
。 - 关闭终端后,历史列表将被写入历史文件
~/.bash_history
。 - 环境变量
HISTSIZE
决定了历史文件中命令的存储数量,默认存储1000条。 - 环境变量
HISTTIMEFORMAT
如果是非空值,则使用其值作为strftime(3)
打印相关时间戳的格式字符串添加在每个显示的历史记录之前;否则不会打印时间戳。 - 该命令是bash内建命令,相关的帮助信息请查看
help
命令。
9、clear 清除当前屏幕终端上的任何信息
clear命令 用于清除当前屏幕终端上的任何信息。
实例
直接输入clear命令当前终端上的任何信息就可被清除。
10、yum 基于RPM的软件包管理器
yum命令 是在Fedora和RedHat以及SUSE中基于rpm的软件包管理器,它可以使系统管理人员交互和自动化地更新与管理RPM软件包,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。
yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。
实例
部分常用的命令包括:
自动搜索最快镜像插件:yum install yum-fastestmirror
安装yum图形窗口插件:yum install yumex
查看可能批量安装的列表:yum grouplist
安装
yum install #全部安装
yum install package1 #安装指定的安装包package1
yum groupinsall group1 #安装程序组group1
更新和升级
yum update #全部更新
yum update package1 #更新指定程序包package1
yum check-update #检查可更新的程序
yum upgrade package1 #升级指定程序包package1
yum groupupdate group1 #升级程序组group1
查找和显示
# 检查 MySQL 是否已安装
yum list installed | grep mysql
yum list installed mysql*
yum info package1 #显示安装包信息package1
yum list #显示所有已经安装和可以安装的程序包
yum list package1 #显示指定程序包安装情况package1
yum groupinfo group1 #显示程序组group1信息yum search string 根据关键字string查找安装包
删除程序
yum remove | erase package1 #删除程序包package1
yum groupremove group1 #删除程序组group1
yum deplist package1 #查看程序package1依赖情况
清除缓存
yum clean packages # 清除缓存目录下的软件包
yum clean headers # 清除缓存目录下的 headers
yum clean oldheaders # 清除缓存目录下旧的 headers
更多实例
# yum
/etc/yum.repos.d/ # yum 源配置文件
vi /etc/yum.repos.d/nginx.repo # 举个栗子: nginx yum源
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/6/$basearch/
gpgcheck=0
enabled=1
# yum mirror
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
wget https://mirror.tuna.tsinghua.edu.cn/help/centos/
yum makecache
# 添加中文语言支持
LANG=C # 原始语言
LANG=zh_CN.utf8 # 切换到中文
yum groupinstall "Chinese Support" # 添加中文语言支持
今天到此为止!!!下次再见!!!
关注、 点赞 、收藏 、转发 感谢!!!