Linux基础
一、命令
##1、命令格式
命令 + 命令选项(可选) + 命令参数(可选)
command [option] [arguments]
/*举例:
短格式可选项,如:-f
带参数的短格式可选项,如:-f512或-f 512
长格式可选项,如:--filesize
带参数的长格式可选项,如:--filesize=512
*/
2、常用命令介绍
1)查看帮助
应用程序帮助选项: -h或-help
man
[command]
info
[command]
help
[command]
或者临时工作需要时可以查看菜鸟教程来快速上手:Linux命令大全:https://www.runoob.com/linux/linux-command-manual.html
2)目录操作
1、常用目录操作
命令 | 功能介绍 |
---|---|
ls | 列出目录的属性信息 |
pwd | 列出用户当前所处目录路径 |
du | 列出目录占用磁盘空间大小 |
cd | 改变用户的当前目录 |
mkdir | 建立一个新目录 |
rmdir | 删除一个目录及其中的文件 |
2、ls 命令
命令+参数 | 功能介绍 |
---|---|
ls -a | 显示所有文件及目录 (ls内定将文件名或目录名称开头为"."的视为隐藏档,不会列出) |
ls -l | 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出 |
ls -r | 将文件以相反次序显示(原定依英文字母次序) |
ls -t | 将文件依建立时间之先后次序列出 |
ls -A | 同 -a ,但不列出 “.” (目前目录) 及 “…” (父目录) |
ls -F | 在列出的文件名称后加一符号;例如可执行档则加 "", 目录则加 “/”* |
ls -R | 若目录下有文件,则以下之文件亦皆依序列出 |
3、du命令
命令可选组成:
du [-abcDhHklmsSx][-L <符号连接>][-X <文件>][--block-size][--exclude=<目录或文件>][--max-depth=<目录层数>][--help][--version][目录或文件]
参数详解:
命令+参数 | 功能介绍 |
---|---|
du --human-readable 或 -h | 以K,M,G为单位,提高信息的可读性。 |
du --separate-dirs | 显示个别目录的大小时,并不含其子目录的大小。 |
du --exclude=<文件> | 略过指定的目录或文件。 |
du --max-depth=<目录层数> | 超过指定层数的目录后,予以忽略。 |
4、mkdir命令
确保目录存在,不存在则创建一个。
mkdir [-p] dirName
例如:
mkdir -p BBB/Test
在工作目录下的 BBB 目录中,建立一个名为 Test 的子目录。 若 BBB 目录原本不存在,则建立一个。(注:本例若不加 -p,且原本 BBB目录不存在,则产生错误。)
3)文件操作
1、cat
cat [文件名] #查看文件内容
cat [文件A] >> [文件B] #把文件A 内容追加到文件B里
echo “str" > [文件] #把str写入文件中,且覆盖文件里其他内容
echo "str" >> [文件] #把str追加写入文件中,不覆盖
echo
:显示,不常用。
>
:重定向 配合echo使用,把本该显示到屏幕上的内容重定向写到文件里。
>>
:追加重定向 顾名思义。
2、head 与 tail
当cat显示完全文件的内容时,太长了,可以选择显示前、尾几行。
head [文件名] : 默认显示前10行
tail [文件名] : 默认显示尾10行
-参数 : -[行数] 显示指定多少行
3、more
按页展示,空格跳转下一页。
4)文件权限
1、文件属性的查看:ls -l [文件名]
可能用到的命令:
chown:更改文件所有人。
chgrp: 设置文件的属组信息。
2、文件权限
文件权限有:读、写、执行,三种权限。对应下表。
权限项 | 文件类型 | 读 | 写 | 执行 | 读 | 写 | 执行 | 读 | 写 | 执行 |
---|---|---|---|---|---|---|---|---|---|---|
字符表示 | (d|t|c|s|) | ® | (w) | (x) | ® | (w) | (x) | ® | (w) | (x) |
数字表示 | 4 | 2 | 1 | 4 | 2 | 1 | 4 | 2 | 1 | |
权限分配 | 所有者 | 所有者 | 所有者 | 所属组 | 所属组 | 所属组 | 其他用户 | 其他用户 | 其他用户 |
权限操作指令:chmod
例如,chmod 777 hello.cpp 指的是把hello.cpp文件的读写执行三个权限赋给所有类型用户。
5)Linux文件系统结构树
根目录是整个系统最重要的一个目录,因为不但所有的目录都是由根目录衍生出来的, 同时根目录也与开机/还原/系统修复等动作有关。 由于系统开机时需要特定的开机软件、核心文件、开机所需程序、 函式库等等文件数据,若系统出现错误时,根目录也必须要包含有能够修复文件系统的程序才行。
usr是Unix Software Resource的缩写, 也就是『Unix操作系统软件资源』所放置的目录,而不是用户的数据啦!这点要注意。 FHS建议所有软件开发者,应该将他们的数据合理的分别放置到这个目录下的次目录,而不要自行建立该软件自己独立的目录。
/var目录主要针对常态性变动的文件,包括缓存(cache)、登录档(log file)以及某些软件运作所产生的文件, 包括程序文件(lock file, run file),或者例如MySQL数据库的文件等等。