常用命令
ls
ls 显示文件和目录 ll 显示详细信息 ll -a 显示所有文件 ll -h 人性化显示
cat
cat file 显示文件内容 cat > file 根据键盘输入创建文件 cat file file > newfile 拼接已有文件并创建新文件
less
less file 查看大文件,通过空格向后翻页,b向前翻页
alias
alias 查看系统中的别名 alias 别名='原命令' 设定别名,临时生效 unalias 别名 删除别名,临时删除
cd
cd 进入当前用户家目录 cd - 进入上次目录 cd ..进入上一级目录
file
file 文件名 目录(d):目录文件包括了目录下所有文件的名字和在分区中的位置 普通文件(f):数据文件、可执行文件等 块设备(b):把数据存储在固定大小的单元中,支持随机存取,比如磁盘 字符设备(c):以字节为单位发送或接收字节流,不支持随机存取,比如打印机、Modem 套接字文件(s):进程之间通过网络进行通信的文件 管道文件(p):进程间用于通信的文件,又名FIFO 符号链接文件(l):仅是一种链接
echo
echo 字符串 输出字符串或变量的值,默认输出后会换行,且不会识别特殊字符 echo -n 字符串 输出字符串或变量的值,不换行 echo -e 字符串 输出字符串或变量的值,在遇到 特殊字符时需转换,比如\n代表换行
mkdir
mkdir -p dirname 创建目录
rm
rm -r 文件或目录名 删除文件或目录
cp
cp -a 源文件或目录 复制文件或目录
man
man command 查看帮助
help
command —help 查看帮助
whereis
whereis command 搜索命令所在路径以及帮助文档,不能搜索shell自带的命令,比如cd
which
which command 搜索命令所在路径以及别名,不能搜索shell自带的命令,比如cd
history
history 查看历史命令
关机和重启
挂机 poweroff halt shutdown -h now 重启 reboot shutdown -r now shutdown命令更安全,但只能由root执行
sync
sync 强制将内存缓冲区中的数据立即写入磁盘
scp
scp 选项 地址 用于服务器之间传输数据,数据被加密,相比rsync命令占用资源小,但传输速度慢 选项 -q 不显示传输进度条 -r 递归复制整个目录 -v 详细方式显示输出 eg scp local_file remote_ip:remote_folder 将本地文件复制到另一台服务器 scp -r local_folder remote_ip:remote_folder 将本地目录复制到另一台服务器 scp remote_ip:remote_file local_folder 将另一台服务器上的文件复制到本地 scp -r remote_ip:remote_folder local_folder 将另一台服务器上的目录复制到本地 eg scp log root@120.92.16.9:/root 将log文件复制到另一台服务器
wget
wget -q URL:不显示下载进度 wget URL -o 日志文件:将下载进度写入日志文件 wget URL -O 新文件名:指定下载后的文件名称(大写字母O) wget -t 次数 URL:下载失败,指定重试次数 wget -t 0 次数 URL:不停进行重试 使用wget下载文件时不会保留原始文件的权限
curl
curl --silent -O URL:silent表明不显示下载进度,O标示将下载数据写入文件而不是写入到标准输出 curl -I --silent -H "Host: plugin..srv" "10.10.10.10/plugin.tar.gz" :通过http访问文件命令 指定域名以及主机,注意:此命令不会下载文件!H选项指定请求头部信息,slient选项指明无需显示下载进度,I选项指明无需下载文件,仅显示响应头信息,-O选项可以将下载的内容下入到指定文件 curl --silent -H "Host: plugin.srv" "10.10.10.10/plugin.tar.gz" -O temp 通过指定ip下载文件,并将下载数据写入temp文件 curl -l -H "Content-Type: application/json" -H "Apitoken: {"name": "test","sig": "123"}" -X POST -d '{"name": "test"}' http://127.0.0.1:8080/api/v1/hostgroup 使用post方法 curl -X POST http://localhost:8080/upload -F "file=@/Users/appleboy/test.zip" -H "Content-Type: multipart/form-data"
管道符
command1;command2 多条命令顺序执行 command1&&command2 命令1执行成功才执行命令2 command1||command2 命令1执行失败才执行命令2
压缩与解压缩
.zip
压缩 zip 新压缩文件名.zip 被压缩文件 zip -r 新压缩文件名.zip 被压缩目录 解压缩 unzip 压缩文件名.zip
.tgz
tar -zcvf 新压缩文件文件名.tar.gz 被压缩文件 tar -zcvf 新压缩文件文件名.tar.gz 被压缩文件1 被压缩文件2........ 解压缩 tar -zxvf 压缩文件文件名.tar.gz tar -zxvf 压缩文件文件名.tar.gz -C /home 解压到home目录
挂载
Linux的文件系统是一个树形结构,以 / 目录作为根 目录,如果想使用某个存储设备,需要先将其挂载到某个分区下,从而可以通过挂载点访问此设备,挂载实际上是挂载的文件系统。
mount 查询已经挂载的设备 mount 设备文件名 挂载命令 mount /dev/sr0 /mnt/cdrom 将/dev/sr0挂载到/mnt/cdrom 目录上 umount [设备文件名或挂载点] 卸载,挂载后必须卸载 umount /mnt/cdrom 卸载
链接
硬链接
作用:为重要文件建立硬链接,防止误删 创建:ln file1 file2 为file1创建了硬链接 特点 拥有相同的索引号,即i节点,i节点是文件的唯一标示 只能对已存在的文件创建硬链接 不能对目录创建硬链接 只能在同一个目录下创建 删除其中一个,仍可以访问 提供了多条访问文件的路径
软链接
作用:提供访问文件的路径 创建:ln -s file1 file2 为file1创建了软链接 特点 软链接文件含有自己的i节点和block块,保存源文件的文件名和i节点, 类似windows的快捷方式 可以对不存在的文件创建软链接 可以对目录和文件创建软链接 可以在不同目录下创建 修改任意文件,另一个同时改变 删除源文件,软连接不能使用 创建软连接时,源文件必须写绝对路径
常见目录
列表
/bin以及/usr/bin 保存系统命令,普通用户可以执行 /sbin以及/usr/sbin 保存系统命令,只有root可以执行 home 普通用户家目录 root 超级用户家目录 dev 存放设备文件 etc 保存系统配置文件 var 存放系统相关文档,如日志、邮件 lib 保存系统运行所需的函数库 usr 系统软件资源目录 tmp 保存临时数据 boot 为启动目录,存放内核文件 mnt 临时挂载设备的挂载点 proc和sys 保存内存的过载点,不能向其写数据
常见日志
列表
/var/log/boot.log 记录主机开机过程的信息 /var/log/message 系统启动后的信息和错误日志 /var/log/syslog 记录系统出现问题的信息,默认不生成此日志,可以配置/etc/syslog.conf生成 /var/log/cron 记录定时任务信息 /var/log/maillog 记录发送到系统的邮件以及从系统发出的邮件 /var/log/wtmp 永久记录每个用户登录、注销及系统的启动、停机的事件,文件会越来越大 /var/run/utmp 记录有关当前登录的每个用户的信息 /var/log/lastlog 记录用户上次登录的时间