Linux基本使用
Posted 敏達
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux基本使用相关的知识,希望对你有一定的参考价值。
Linux基本使用
常用快捷键
按键 | 操作 |
---|---|
C-c | cancel取消当前操作 |
C-l | 清空屏幕内容 |
C-d | 退出当前用户 |
C-a | 光标移动到行首 |
C-e | 光标移动到行尾 |
C-u | 删除光标到行首的内容 |
打印环境变量 echo $path
常用基本命令
7个最常用
- ls => list
- pwd => print work directory
- cd => change directory
- touch => touch
- mkdir => make directory
- rm => remove
- clear => clear
其他基本命令
- 拷贝和移动文件
cp
mv
- 查看文件内容
cat
more
grep
- 其他
echo
- 重定向
>
和>>
- 管道
|
终端命令的格式
command [-options] [parameter]
说明:
command
命令名[options]
选项,可用来对命令进行控制parameter
参数
[]
代表可选
查阅命令帮助信息
- command --help
说明:
- 显示
command
命令的帮助信息,一般有中文
- man command
说明:
- 查阅
command
命令的英文使用手册
man
是manual的缩写
终端小技巧
- 使用
TAB
来自动补全- 在敲出
文件
/目录
/命令
的前几个字母之后,按下TAB
- 如果输入的没有歧义,系统会自动补全
- 如果还存在其他的
文件
/目录
/命令
可以再按一下TAB
系统会提示可能命令
- 在敲出
- 曾经使用过的命令
- 按
上
/下
光标键 - 退出选择 并且不执行当前的命令
Ctrl+C
- 按
alias
查看别名
命令说明
1. ls
list
- Linux文件或者目录名最长256个字符
-a
显示指定目录下的所有子目录与文件,包括隐藏文件(--all
)- 以
.
开头的文件为隐藏文件 需要-a
参数才能显示
- 以
-l
以列表方式显示文件的详情信息(use a long listing format)- 文件权限-硬连接数量-所有者-所属组-大小-最后一次修改文件或者目录的时间-文件名
-h
配合-l
以人性化的方式显示文件大小(--human-readable
)--full-time
输出详细时间-t
根据最后修改时间排序-r
逆转排序-S
根据文件大小进行排序-i
显示文件夹的inode信息(文件的身份证号,储存了文件的元信息,文件的大小,位置,权限等)-F
在不同的文件结尾,输出不同的特殊符号/
结尾是文件夹*
结尾是可执行文件@
结尾是软链接(快捷方式)- 普通文件类型无结尾
-d
显示文件夹本身信息,不输出其中内容(搭配-l使用查看某文件夹的详细信息)ls /opt
显示根目录下的opt
文件夹
ls通配符的使用
通配符 | 含义 |
---|---|
* | 代表任意个数个字符 |
? | 代表任意一个字符,至少一个 |
[] | 表示可以匹配字符组的任意一个,可以用-连接表示一个范围 |
2. cd
change directory
注意:Linux所有的目录和文件名都是大小写敏感的
命令 | 含义 |
---|---|
cd | 切换到当前用户的主目录(/home/用户名) |
cd ~ | 切换到当前用户的主目录(/home/用户名) |
cd . | 保持在当前目录不变 |
cd .. | 切换到上级目录 |
cd - | 在最近的两次工作目录之间来回切换 |
相对路径和绝对路径
- 相对路径 最前面不是/或者~,表示相对 当前目录 所在的目录位置
- 绝对路径 最前面是/或者~,表示从 根目录/家目录 所在的目录位置
3.su
substitute user
su -用户名 #完全的环境变量用户切换
3. 创建和删除操作
3.1 touch
Linux touch命令用于修改文件或者目录的时间属性,包括存取时间和更改时间。若文件不存在,系统会建立一个新的文件。
创建多个文件
touch alex{a..z}
选项 | 含义 |
---|---|
-c,--no-create | 不创建任何文件 |
-t STAMP | 使用[[CC]YY]MMDDhhmm[.ss] 格式的时间替代当前时间 |
-r,--reference=文件 | 使用指定文件的时间属性替代当前文件时间 |
3.2 mkdir
make directory
选项 | 含义 |
---|---|
-p | mkdir -p ./a/b/c 可以递归创建目录 |
{a,b,c} | 创建多个目录 |
新建目录的名称 不能与当前目录中 已有的目录或文件 同名
bash脚本语法
mkdir a{1..100}
创建a1 - a100 100个文件夹
3.3 rm
remove
使用
rm
命令要小心,因为文件删除后不能恢复!
选项 | 含义 |
---|---|
-f | 强制删除,忽略不存在的文件,无需提示 |
-r | 递归地删除目录下的内容,删除文件夹时必须加此参数 |
4. 拷贝和移动文件
命令 | 对应英文 | 作用 |
---|---|---|
tree[目录名] | tree | 以树状图列出文件目录结构 |
cp 源文件 目标文件 | copy | 复制文件或者目录 |
mv 源文件 目标文件 | move | 移动文件或者目录/文件或者目录重命名 |
cp -r A目录 B目录
如果B目录存在 会将A目录放在B目录内
如果B目录不存在 把A复制过去并命名为B(改名复制)
4.1 tree
选项 | 含义 |
---|---|
-d | 只显示目录 |
4.2 cp
选项 | 对应英文或长参数形式 | 含义 |
---|---|---|
-f | --force | 已经存在的目标文件直接覆盖,不会提示 |
-i | --interactive | 覆盖文件前提示 |
-r | recursively | 若给出的源文件是目录文件,则cp将递归复制该目录下的所有走出目录和文件,目标文件必须为一个目录名 |
4.3 mv
move
mv
命令可以用来移动文件或目录 也可以给文件和目录重命名
选项 | 含义 |
---|---|
-i | 覆盖文件前提示 |
5. 查看文件内容
命令 | 对应英文 | 作用 |
---|---|---|
cat 文件名 | concatenate | 查看文件内容 创建文件 文件合并 追加文件内容等功能 |
more 文件名 | more | 分屏显示文件内容 |
grep搜索文本文件名 | grep | 搜索文本文件内容 |
5.1 cat
cat
命令可可以用来查看文件内容 创建文件 文件合并 追加文件内容cat
会议次显示所有的内容,适合显示内容较少的文本文件
功能 | 说明 |
---|---|
查看文件内容 | cat file |
多个文件合并 | cat file1 file2 > file3 |
非交互式编辑或追加内容 | cat >> file << EOF hello linux hello vim EOF |
选项 | 长参数形式 | 含义 |
---|---|---|
-b | --number-nonblank | 对非空行输出行编号 |
-n | --number | 对输出的所有行编号 |
-s | --squeeze-blance | 不输出多行空行 |
-E | 在每行结尾加上$ |
Linux还有一个
nl
的命令和cat -b
的效果等价
tac
反向查看 cat倒过来
cat 清空文件
1. 直接清空文件,留下了一个空行
echo > gushi.txt #将空行输出到gushi.txt
2.直接清空文件,不留空行
> gushi.txt
3.利用cat读取一个黑洞文件,然后清空其他文本
cat /dev/null > gushi.txt
5.2 more less
more
命令可以用于分屏显示文件内容,每次只显示一页内容less
命令可以用于- 适合于查看内容较多的文本文件
使用more
的操作键:
|操作键|功能|
|---|---|
|enter|显示下一行|
|空格键|显示手册页的下一屏|
|b|回滚一屏|
|f|前滚一屏|
|q|退出|
|=|显示当前行号|
|/word|搜索word字符串|
5.3 grep
Linux
系统中grep
命令是一种强大的文本搜索工具grep
允许对文本文件进行模式查找(正则表达式)
|选项|长参数形式|含义|
|---|---|---|
|-n|--line-number|显示匹配行及行号|
|-v|--invert-match|显示不包含匹配文本的所有行(相当于求反)|
|-i|--ignore-case|忽略大小写|
5.4 head tail
head
命令用于查看文件开头n行
head -5 file
head file #head默认显示10行
-c参数,显示字节数量
head -c 5 file 显示前5个字节
-tail
默认从后向前看10行,也可以指定行数
tail file
tail -2 file
-f 实时刷新文件内容变化(一般用于查看日志文件)
-F 可以检测不存在文件的内容变化
6. 其他
6.1 echo 文字内容
echo
会在终端中显示参数指定的文字,通常会和重定向联合使用
6.2 重定向 > 和 >>
-
Linux允许将命令执行结果重定向到一个文件中
-
将本应先是在终端上的内容 输出/追加 到指定文件中
-
>
表示输出,会覆盖文件原有的内容 -
>>
表示追加,会将内容追加到已有文件的末尾 -
<
重定向写入符 -
<<
重定向追加写入符
cat 123.txt > 111.txt 将123的内容追加到111.txt
cat 123.txt > 111.txt 将123的内容覆盖到111.txt
cat < 123.txt 将文件中的内容发送给cat命令
xargs -n 3 < shuzi.txt
cat >> 1.txt << EOF
>1
>2
>3
EOF
6.3 管道 |
- Linux允许将一个命令的输出 可以通过管道 作为 另一个命令的输入
- 可以理解为现实生活中的管子,管子的一头塞东西进取,另一头取出来,这里
|
的左右分为两端,左端赛东西(写),右端取东西(读)
常用的管道命令有: more
分屏显示内容grep
在命令执行结果的基础上查询指定的文本
7. linux开关机
重启
shutdown -r参数 -r --reboot Reboot the machine
shutdown -r 10 #十分钟后重启
shutdown -r 0 #立刻重启
shutdown -r now #立刻重启
关机
shutdown -h --halt 停止的含义
shutdown -h 10
shutdown -h 0
shutdown -h now
halt,poweroff也可以用作关机
reboot用作重启
8.vim
vim 文件名 #打开文件
以上是关于Linux基本使用的主要内容,如果未能解决你的问题,请参考以下文章
linux打开终端如何启动scala,如何在终端下运行Scala代码片段?
Android 逆向Linux 文件权限 ( Linux 权限简介 | 系统权限 | 用户权限 | 匿名用户权限 | 读 | 写 | 执行 | 更改组 | 更改用户 | 粘滞 )(代码片段