美文网首页
Linux 基本命令

Linux 基本命令

作者: _于曼丽_ | 来源:发表于2020-10-12 09:19 被阅读0次

3-2

终端命令行

linux 有 5 个终端界面:tty1 ~ tty5

control + alt + f1 进入图形界面
control + alt + f2 进入 tty1 终端
control + alt + f6 进入 tty5 终端
登录用户 退出登录输入 exit

参数

短参数

command -a
command -a -b -c -d
command -abcd
command -aA
command -a 10
  • 短参数,只有一个字母,在 - 后面跟参数名
  • 可以有多个参数,通过空格分割
  • 多个参数可以合并
  • 参数区分大小写
  • 参数可以赋值,通过空格分割

长参数

command --param
command --param1 --param2
command --param=10
command -abcd --param1 --param2
  • 长参数,有多个字母,在 -- 后面跟参数名
  • 可以有多个参数,通过空格分割,多个参数不可以合并
  • 参数可以赋值,通过 = 连接参数名和参数值
  • 短参数和长参数可以一起使用

3-3

两次按 Tab 键补全命令

history

history 查看所有历史命令
history 10 查看最近 10 条历史命令
history -c 清除所有历史命令
!5 执行第 5 条历史命令
!ls 执行最近的一条以 ls 开头的历史命令

快捷键

  • Ctrl + L 清除屏幕
  • Ctrl + C 终止大部分的执行程序
  • Ctrl + D 给终端传递 EOF
  • Ctrl + A 光标跳到一行命令的开头
  • Ctrl + E 光标跳到一行命令的结尾
  • Ctrl + U 删除光标左侧的所有字符
  • Ctrl + K 删除光标右侧的所有字符
  • Ctrl + W 删除光标左侧的单词,以空格分割的单词
  • Ctrl + Y 在光标处粘贴通过 Ctrl + U Ctrl + K Ctrl + W 删除的内容

3-4

目录结构

/home 用户家目录
/root root 用户家目录
/etc 配置文件
/var 日志
/usr 软件资源,类似 C:\Windows 和 C:\Programs 的集合
/bin 软连接,指向 /usr/bin 所有用户都可以使用的程序
/sbin 软连接,指向 /usr/sbin 系统级别需要使用的程序
/lib 软连接,指向 /usr/lib,运行程序需要的库文件

命令

  • pwd
  • which

Linux 下的每一条命令对应一个可执行程序,输入一条命令其实就是执行命令对应的应用程序
pwd 命令就是执行 /usr/bin/pwd 这个应用程序

which pwd

3-6

ls

ls -lath

cd

两次按 Tab 键补全路径

cd 进入家目录
cd - 进入上一次目录

du

du -h 读取目录大小
du -ah 读取目录和文件大小
du -sh 只显示目录总计的大小,不列出目录中子目录和文件的大小

3-7

cat

cat <file1> <file2> 一次性显示文件的所有内容,可以把多个文件合并显示

less

less <filepath> 一页页显示文件内容
空格键,前进一页
回车键,前进一行
b 键,后退一页
y 键,后退一行
q 键,退出文件
/ 进入搜索模式 n 下一个匹配项 N 上一个匹配项

head

head -n 5 <filepath> 显示文件头 5 行

tail

tail -n 5 <filepath> 显示文件后 5 行
tail -f -s 5 <filepath> 每隔 5 秒,检查文件更新

touch

touch <file1> <file2> 创建文件,可以一次创建多个文件

mkdir

mkdir -p foo/bar/baz 递归创建目录

3-8

cp

cp <file> <new_file> 复制文件
cp <file> <dir>/ 复制文件到 <div> 目录下
cp -r <dir> <new_dir> 复制目录

mv

mv <file>|<div> <new_file>|<new_dir> 移动文件或目录
mv *.txt one 将 当前目录下所有 .txt 文件移动到 one 目录中

rm

rm <file1> <file2> <file3>
rm -f <file> 强制删除文件,不会提示
rm -r <dir> 递归删除目录以及目录的所有内容
rm -rf <file>|<div>

3-9

Linux 文件包括文件名和文件内容

硬链接

只能指向文件,两个文件名指向同一个 inode,也就是两个文件名指向相同的文件内容。删除一个文件不影响另一个文件。
硬链接只能指向文件,不能指向目录
硬链接不能跨分区

ln source_file linked_file
ls -i 查看 inode

软连接

软连接相当于 Windows 中的快捷方式,可以指向文件或目录,新文件指向原来的文件,两个文件的 inode 不同。删除新文件,原来的文件不受影响,删除原来的文件,新文件变成无效链接。
软连接可以指向目录
软连接可以跨分区
软连接的 source 必须是绝对路径

ln -s source_file linked_file

大部分情况使用软连接

压缩文件

打包:将多个文件变成一个总的文件,这个总的文件一般被称为 archive
压缩:将一个大文件通过某些算法变成一个小文件

首先使用 tar 将多个文件归档为一个总的文件,称为 archive
使用 gzipbzip2 将 archive 压缩为更小的文件

tar

tar -cvf 创建归档

# 将 sorting 目录中的文件打包到 sorting.tar 的归档中
tar -cvf sorting.tar sorting
# 将多个文件打包到 archive.tar 的归档中,但是最好先将所有文件放到一个目录中,否则解压之后会在当前目录产生多个文件
tar -cvf archive.tar file1 file2 file3

tar -rvf 追加内容到已有归档

# 追加 file4 文件到 sorting.tar 的归档中
tar -rvf sorting.tar file4

tar -tf 显示归档中的内容,并不解开归档

# 查看 sorting.tar 中的内容
tar -tf sorting.tar

tar -xvf 解开归档的内容

# 解开 sorting.tar 中的内容
tar -xvf sorting.tar

gzip bzip2 gunzip bunzip2

  • .tar.gz 用 gzip 命令压缩后的文件的扩展名
  • .tar.bz2 用 bzip2 命令压缩后的文件的扩展名
# 直接将 sorting.tar 压缩成 sorting.tar.gz
gzip sorting.tar
# 直接将 sorting.tar 压缩成 sorting.tar.bz2
bzip2 sorting.tar
# 将 sorting.tar.gz 解压缩
gunzip sorting.tar.gz
# 将 sorting.tar.bz2 解压缩
bunzip2 sorting.tar.bz2

tar -zcvf 归档,然后用 gzip 来压缩

# 打包压缩一步到位
tar -zcvf sorting.tar.gz sorting
# 解压
tar -zxvf sorting.tar.gz

tar -jcvf 归档,然后用 bzip2 来压缩

# 打包压缩一步到位
tar -jcvf sorting.tar.bz2 sorting
# 解压
tar -jxvf sorting.tar.bz2

zcat zmore zless 显示用 gzip 命令压缩的文件内容

zcat sorting.tar.gz

bzcat bzmore bzless 显示用 bzip2 命令压缩的文件内容

bzcat sorting.tar.bz2

zip unzip

zip 可以压缩文件,也可以压缩目录,压缩目录需要 -r 参数

zip -r sorting.zip sorting
unzip sorting.zip

文件传输

wget

wget 从远程下载文件

wget 文件的HTTP或FTP地址

scp

scp 命令基于 SSH 协议

将本地文件复制到远程服务器

scp ~/file.txt root@192.168.100.10:/root

将服务器文件复制到本地

scp root@192.168.100.10:/root/file.txt file.txt

rsync

rsync 命令基于 SSH 协议

本地同步

# 将 images 目录下的所有文件备份到 backups 目录下
rsync -arv images/ backups/
# 默认增量备份,源目录中删除一个文件,目标目录不会删除该文件,如果想要同步删除,需要参数 --delete
rsync -arv --delete images/ backups/

-r 递归
-a 递归,且保留文件信息,有 -a 就可以不用 -r
-v 显示进度信息

远程同步

# 将本地同步到远程
rsync -av source/ username@remote_host:destination

# 将远程同步到本地
rsync -av username@remote_host:source/ destination

相关文章

网友评论

      本文标题:Linux 基本命令

      本文链接:https://www.haomeiwen.com/subject/ccqjpktx.html