Linux基本指令快速入门
1、ls指令
1.1 功能
ls可以列出目录下的子目录和文件,跟dos下的dir命令功能一样
1.2 使用
ls [选项] [目录或文件]
1.3 常用选项
- -a 列出目录下的所有文件,包括以 . 开头的隐含文件
- -l 列出文件的详细信息,如创建者,创建时间,文件的读写权限…
- -R 递归列出所有子目录下的文件
- -s 在每个文件的后面打印出文件的大小
1.4 小技巧
ls -l 等价于ll ,即列出文件下详细信息
我们还可以安装tree指令,执行tree指令,它会以树状结构列出指定目录下的所有文件,包括子目录里的文件
2、cd指令
2.1 Linux的目录结构
linux的文件系统是采用级层式的树状目录结构,每个节点都是目录或文件,此结构中最上层是根目录“/”,在linux中一切皆文件
2.2 功能及使用
功能:cd是ChangeDirectory的缩写,改变工作目录,将当前工作目录变到指定的目录
使用:cd 目录名,如 cd mycodes/class100/lesson3 则跳转到lesson3目录
2.3 小技巧
. . 两个点代表上级目录,则cd . .可以返回上级目录
~ 波浪线代表主用户主目录,则cd ~可以返回用户主目录
- 横线代表上级目录,则cd - 可以返回最近访问目录
/ 斜线代表上级目录,则cd / 可以返回到根目录
cd+ls == windows下对文件夹的双击,即进入文件夹并显示其中包含的目录和文件
3、pwd指令
3.1 功能
显示当前用户所处的目录对应的路径
3.2 使用
直接输入pwd
4、touch指令
4.1 功能
在当前目录下新建一个文件,还可更改文档或目录的日期时间,包括存取时间和更改时间
4.2 使用
touch [选项] 文件
4.3 常用选项
- -a 或–time=atime或–time=access或–time=use只更改存取时间
- -c 或–no-create 不建立任何文档
- -d 使用指定的日期时间,而非现在的时间
- -f 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题
- -m 或–time=mtime或–time=modify 只更改变动时间
- -r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同
- -t 使用指定的日期时间,而非现在的时间
5、mkdir指令
5.1 功能
在当前目录下创建一个新的目录,可指定某位置生成目录(在指令后加上路径即可)
5.2 使用
mkdir [选项] 文件名…
5.3 常用选项
- p 递归选项,mkdir –p dir1/dir2/dir3 : 递归建立多个目录,dir1下有dir2…
通过tree指令查看:
6、rmdir 与 rm 指令
6.1 功能
rm为remove移除之意,rm命令可以同时删除文件或目录
rmdir与mkdir相对,mkdir是建立目录,而rmdir是删除空目录
6.2 使用
rmdir [-p] 目录名
rm [-p] 文件名/目录名
6.3 常用选项
rmdir [dirName] ->只能删除空目录
rm -r [dirName] ->递归删除目标目录及其所有子目录
rm -rf [dirName] ->强制删除(并不提示)目标目录及其所有子目录
rm * ->删除当前目录下的全部文件,*为通配符,匹配当前目录下的任何内容,等价 rm ./ *
rm -rf * ->强制删除(并不提示)当前目录下的所有文件和目录
7、man指令
7.1 功能
相当于Linux自带的参考手册,可以查Linux的命令,还可以查C语言的库函数,通过带上不同的编号来查看
7.2 使用
man [选项] 命令
7.3 示例
查看ls的用法
得到:
8、cp指令
8.1 功能
copy复制文件或目录,可同时复制多个文件,但不能同时到多个目的地
8.2 使用
cp [选项] 源文件或目录 目标文件或目录
8.3 常用选项
- -f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在
- -r递归处理,将指定目录下的文件与子目录一并处理
- -i 或 --interactive 覆盖文件之前先询问用户
8.4 示例
cp test.c .. ->将test.c复制到上级目录
cp -r dir .. ->复制dir到上级目录,由于目录是树状结构,所以需要-r
cp -rf * .. ->复制当前目录的所有文件到上级目录
cp test1.c test2.c .. ->将test1.c,test2.c复制到上级目录
cp -rf *.txt .. ->复制当前目录的所有 txt 文件到上级目录
运行截图:
9、mv指令
9.1 功能
mv命令是move的缩写,可以用来移动文件或者将文件改名,是Linux系统下常用的命令,经常用来备份文件或者目录。
9.2 使用
mv [选项] 源文件或目录 目标文件或目录,其使用与 cp 指令基本相同
当最右边参数是目标文件,此时,源文件只能有一个并将此文件改名
当最右边参数是目标目录,此时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中
9.3 常用选项
- f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
- -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!
9.4 示例
改名代码运行:
移动代码运行:
10、cat指令
10.1 功能
concatenate查看目标文件的内容,打印出来
补充: tac 指令 ->从后往前打印内容
10.2 使用
cat [选项][文件]
10.3 常用选项
- -b 对非空输出行编号
- -n 对输出的所有行编号
- -s 不输出多行空行
11、more和less指令
11.1 功能
类似 cat ,用于查看,不过会以一页一页的形式显示,更方便使用者逐页阅读
less 指令:与 more 基本相同,可按q退出
11.2 使用
more / less [选项][文件]
11.3 对比
cat用来看小文本,小日志
more和less看海量数据,但less支持上翻页,more不支持,less 在查看之前不会加载整个文件
12、tail和head指令
7.1 功能
显示开头或结尾某个数量的文字区块,常用查看日志文件
7.2 使用
tail / head [参数]… [文件]…
7.3 常用选项
-n <行数> 显示行数
head -10 a.txt ->打印头十行
tail -10 a.txt ->打印后十行
13、时间相关的指令
13.1 功能
date 指令:可指定格式显示时间
cal 指令:可显示日历
13.2 使用
date [选项]… [+格式]
cal [参数][月份][年份]
13.3 常用选项及示例
指定格式显示时间: date +"%Y-%m-%d"
打印时间戳:date +%s
显示当前月份的日期在当年中的第几天:cal -j
显示前一个月、当前月和下一个月的月历:cal -3
14、find指令
14.1 功能
相当于windows的搜索,查一下我的某文件在哪
14.2 使用
find pathname -options
14.3 常用选项及示例
find -name 文件名:输出查找的文件所在的目录
find -name f* :查找该目录下以“f”开头的文件
还可以查找以特定后缀的文件
find -user 用户名 :输出当前目录下的所有文件、目录以及当前工作目录下的所有子目录和子目录里面的文件
15、grep指令
15.1 功能
在目标文件中搜索包含特定字符串的一行,后续主要用来找进程
15.2 使用
find pathname -options
15.3 常用选项及示例
- -i :忽略大小写的不同,所以大小写视为相同
- -n:顺便输出行号
- -v:反向选择,亦即显示出没有 ‘搜寻字符串’ 内容的那一行
grep '123' a.txt ->在a.txt中查找包含123的行,打印出来
grep -n '123' a.txt ->在a.txt中查找包含123的行,带行号打印出来
grep -v '123' a.txt ->在a.txt中查找包含123的行,剔除他们将其他行打印出来
16、zip/unzip指令
16.1 功能
zip: 压缩目录或文件为.zip 文件
unzip: 解压.zip 文件
16.2 使用
zip [参数] [压缩包名] [压缩的目录或者文件的路径]
unzip [参数] [压缩文件] (-d [目录])
16.3 常用选项及示例
对于 zip :
- -m :将文件压缩后,删除原文件
- -r :递归压缩,将自定目录下的所有子文件以及文件一起处理
zip file.zip ./*.txt :将当前目录下所有txt文件打包为file.zip
对于 unzip :
- -l :显示压缩文件内所包含的文件,并不解压缩
- -d :指定文件解压后存储的目录
unzip -l file.zip:查看压缩文件内包含的文件
unzip file.zip -d ./dir2 : 解压到dir2目录下
17、tar指令
17.1 功能
可打包压缩目标文件和目录
17.2 使用
tar [参数] [生成的文件名] [要操作的文件]
17.3 常用选项及示例
- -c :建立一个压缩文件的参数指令(create 的意思);
- -x :解开一个压缩文件的参数指令!
- -t :查看 tarfile 里面的文件!
- -z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?
- -f :使用文件名,在 f 之后要再加参数要加文件名
tar czf temp.tgz * :将当前目录所有文件递归式打包为temp.tgz
tar xzf temp.tgz -C lesson3 :将压缩文件解压到lesson3目录
18、bc指令
18.1 功能
相当于Linux中的计算器
18.2 使用
bc (选项)(参数)
ctrl+c 退出
18.3 示例
Linux中输入bc后即打开计算器,可进行数学计算
19、echo指令
19.1 功能
可写内容到文件中
19.2 使用
echo [文本] > [要写入的文件]
19.3 示例
20、uname指令
20.1 功能
可获取电脑的位数和操作系统的内核版本相关信息
20.2 使用
uname [选项]
20.3 常用选项及示例
- -a或–all 详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类型,硬件平台类型,操作系统名称