linux与shell 3.bash shell基础
通配符
符号 | 含义 |
---|---|
? | 任意单个字符 |
* | 0个或多个字符 |
[ay] | a或y |
[a-y] | a,b,c,...,y |
[!a] | 排除a |
例:
$ touch fall fell full fill $ ls -l f[!a]ll fell full fill
文件
创建
touch file_name
复制
cp sources destination
cp file_name_1 file_name_2
强制覆盖
-i
覆盖时询问(-i)
cp file_name_1 /home/documents/
最后一个‘/’很重要,表明是一个目录。否则若documents/不存在,将会将复制的file_name_1命名为documents,且没有报错
cp -R documents/ newdocuments/
创建newdocuments/(-R的作用),并将documents复制
重命名 、 移动
mv file_name_1 file_name_2
不改变inode和时间戳,原文件不见了(相当于剪切)
删除
rm
-i 提示是否删除
-f 强制删除
-r 向下进入目录,删除其中文件再删除本身
链接文件
软连接
ln -s test_file slink_test_file
2者是不同的文件,iNode不同,大小不同
硬链接
ln test_file hlink_test_file
2者是相同的文件,iNode相同,大小相同,需要位于同一个储存设备
例
┌──(kali㉿DESKTOP-FQ0BCLS)-[/mnt/e/Edgedownload] └─$ touch file1 ┌──(kali㉿DESKTOP-FQ0BCLS)-[/mnt/e/Edgedownload] └─$ ln -s file1 file2 ┌──(kali㉿DESKTOP-FQ0BCLS)-[/mnt/e/Edgedownload] └─$ ls -li file* 1125899906974430 -rwxrwxrwx 1 root root 0 Dec 25 15:47 file1 844424930263775 lrwxrwxrwx 1 root root 5 Dec 25 15:47 file2 -> file1 ┌──(kali㉿DESKTOP-FQ0BCLS)-[/mnt/e/Edgedownload] └─$ sudo rm -i file* [sudo] password for kali: rm: remove regular empty file 'file1'? rm: remove symbolic link 'file2'?
查看文件内容
file file_name 查看文件类型
cat file_name 显示文本文件
-n 行号
-b 仅文本显示行号
more file_name
less file_name 都是显示大文件
head file_name 显示开头10行
-n 2 显示开头2行
tail file_name 显示末尾10行
-n 2 显示末尾2行
-f 允许其他进程使用此文件时查看文件,可用于实时检测系统日志
目录
ls
列出文件或目录
-F 区分文件和目录 (/ 目录,* 可执行文件)
-a 显示隐藏文件
-R 列出所有子目录及其中文件
-l 目录中内容的详细信息
-ld 当前目录的详细信息
-i inode编号,每个对象的唯一标识
mkdir
创建目录
mkdir -p dir1/dir2/dir3
创建一系列目录
rmdir
只能删除空目录
rm -rf
强制删除目录所有内容
本文作者:榴红八色鸫
本文链接:https://www.cnblogs.com/hezexian/p/17004120.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步