Linux学习之旅1——终端和文件操作(上)
1.前言
- 我们为什么要学习Linux?
- 大部分网站的服务器是Linux系统
- Android系统的底层是修改过的Linux内核
- TOP500的超级计算机有99%是Linux系统
2.命令行提示符(用户名@电脑名:当前目录/权限)
1 | ming@ming-VirtualBox:~$ |
故上述意思为用户名为ming,电脑名为ming-VirtualBox,家目录,普通用户(超级用户为#)
切换为超级用户:
1 | sudo su |
要退出,使用Crtl+D或exit命令即可
3.常用命令(不常用的要RTFM)
-
举例
常用命令 描述 whoami 打印用户名 hostname 打印电脑名 date 获取当前时间 ls 列出当前目录下文件与目录 history 列出所有使用过的命令(!编号 以运行对应历史命令) pwd 打印当前工作目录(Print Working Directory) which 打印可执行程序(命令)所在路径 -
什么是命令参数
1
2command parameters
command -p -a -T -c 等价于 command-paTc -
短参数举例
1
ls -a
以上命令代表显示当前目录下全部(all,包括隐藏)文件与目录,linux隐藏文件以’.'开头
-
长参数举例
1
ls --all
与上述短参数命令等价
-
参数的赋值
1
2command -p 10
command --parameter=10 # 两行命令等价 -
快捷/功能键介绍
按键 描述 Tab键 补全命令(空格键下一页,回车下一行,q退出列表) Ctrl+R 搜索使用过的命令 Ctrl+L 清空终端内容 Ctrl+D 向终端传递EOF Shift+PgUp/PgDn 向上/向下滚屏 Ctrl+A / Home 光标跳到行命令开头 Ctrl+E / End 光标跳到行命令结尾 Ctrl+U 删除光标左侧命令字符 Ctrl+W 删除光标左侧一个单词(空格隔开的字符串) Ctrl+Y 粘贴命令操作删除的字符串
4.目录命令详解
-
ls
1
2
3
4
5
6
7
8ls --color=auto 开启颜色标注
ls --color=none 关闭颜色标注
# 蓝色 --> 目录
# 绿色 --> 可执行文件
# 红色 --> 压缩文件
# 浅蓝色 --> 链接文件
# 灰色 --> 其他文件 -
ls -a (显示所有文件、目录,包括隐藏文件、目录)
-
ls -l (显示文件、目录详细信息,total单位为千字节)
-
.(点)代表当前目录
-
…(两个点)代表上一级目录
-
ls -A(显示所有文件、目录,不包括.和…)
-
ls -lh(h是human-readable,更直观显示数据)
-
ls -lt(-t表示按文件修改时间顺序排列)
-
以上命令可以叠加使用
1
2ls -lath
ls -l -a -t -h -
cd(change directory)命令
1
2
3
4
5
6cd / # 定位到根目录
cd usr/games # 相对路径 定位到当前目录下usr/games文件夹
cd /usr/games # 绝对路径 定位到根目录下...
cd .. # 退到上一级目录
cd ../.. # 回退两级目录
cd ~ # 回到家目录 -
du(disk usage)命令
1
2
3
4
5du # 显示所有目录大小
du -s # 只输出当前目录总大小
du -a # 显示所有目录+文件大小
# 提示:加上-h命令以易于阅读
5.文件命令详解
显示文件部分命令
-
cat(concatenate)命令
1
cat -n syslog # 输出syslog文件所有内容,并显示行数
-
less 命令
1
2
3
4
5PgDn / 空格键 读取下一页
PgUp / b 读取上一页
↑ ↓ / y Enter 读取上/下行
d / u 前进/后退半页
q 终止less命令 -
less快捷键
less命令常用快捷键 描述 = 显示所在文件位置 h 显示帮助文档(q退出) / 搜索模式(n/N 前后跳转) -
head 与 tail 命令
1
2
3
4
5head syslog # 默认显示文件头部10行
tail syslog # 默认显示文件尾部10行
head -n 5 syslog # 显示文件头部5行
tail -f syslog # 追踪文件更新 默认1秒一次
tail -f -s 4 syslog # 使用-s指定检查间隔
创建文件部分命令
-
touch (创建文件)与 mkdir (创建目录)命令
1
2
3
4touch new_file
touch "hello world"
mkdir -p one/two/three # 使用-p递归创建目录结构
文件的复制、移动、删除、链接
-
cp 与 mv 命令:拷贝、移动文件
1
2
3
4
5
6
7
8cp new_file new_file_copy # 当前目录拷贝文件并生成新的文件
cp new_file one/(文件名,可省略) # 拷贝一份文件到one目录下
cp -r one one_copy # 使用-r拷贝文件夹
mv new_file one # 将new_file这个文件移动到one目录
mv new_folder one # 将new_folder这个文件夹移动到one目录
mv new_file renamed_file # 改名 -
通配符 *
1
2cp *.txt folder # 将目录下所有txt文件拷贝到folder子目录中
cp ba* folder # 将目录下所有ba开头的文件拷贝到folder目录中 -
rm(删除)命令
1
2
3
4
5
6rm new_file # 直接删除文件
rm -i new_file # 使用-i提示是否删除(y/n)
rm -f new_file # 使用-f强制删除文件(慎用)
rm -r new_file # 使用-r递归的删除文件,包含子目录和文件
rm -rf / # 危险命令,不信你试试! -
ln(link)命令:创建链接
1
2
3
4
5
6
7
8
9
10
11
12
13# Linux中文件名和文件内容(incode码识别)分开保存
# 硬链接
touch file1
ln file1 file2 # 创建file2,与file1硬链接(共享),file2指向file1内容
ls -i # 查看该目录文件的incode码
# 提示:使用ls -l命令所输出的第二列数字其实就是拥有相同incode号文件的个数
# 软链接(-s 含义:symbolic 符号的)
ln -s file1 file2
# 提示:此时使用ls -l命令会发现file2->file1,说明file2指向的并不是file1的内容了
# 此时file2与file1的incode不同看下面两张图,你就会恍然大悟:
-
软链接与硬链接区别
- 软链接可以指向目录,硬链接不可以
下篇文章推荐:Linux学习之旅2——终端和文件操作(下)
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 515code-实验室!
评论