Skip to content

基础命令

目录操作

  • cd 日常操作
命令含义
cd Change Directory,cd后直接回车,回到用户主目录
cd ~回到用户主目录,等同于 cd 直接回车
cd /切换到系统根目录
cd ..切换到父目录
cd ../切换到父目录, 同上
pwdPrint Working Directory,显示目前所在的目录
  • ls 日常操作
命令含义
ls查看当前目录下的所有目录文件
ls -a查看当前目录下的所有目录文件 , 包括隐藏文件
ls -l查看当前目录下所有目录文件的详细信息(文件创建的时间,文件权限,文件的类型)
ll等同于 `ls -l, 大多数情况下支持简写命令,若不支持,可以自行扩展别名
  • 目录,文件操作
命令示例含义
mkdirmkdir abc创建名字为 abc 的目录
rmrm aaa.txt【删除需谨慎】删除名称为 aaa.txt 的文件
rmrm -rf abc【删除需谨慎】-r 递归,-f 强制(不出现删除提示),递归方式强制删除目录
cpcp aaa.txt bbb.txt复制,将 aaa.txt 复制为 bbb.txt, 复制时可加上路径,即复制到新的位置
cpcp -r abc efg将 abc 目录,以递归方式复制为 efg
mvmv aaa.txt bbb.txt修改名称,移动, 将 aaa.txt 重命名为 bbb.txt, 若位置不同,即为移动

注意:

  1. 以 . 点前头的文件名,目录名,为隐藏文件/目录
  2. Linux 中的目录,即 Windows 中的文件夹
  3. 路径:文件 / 目录的位置,称之为路径
  4. 相对路径:不以 / 开头,相对于当前位置的相对位置
  5. 绝对路径:以 / 开关,相对于系统根目录的位置

文本操作

Linux 基本的文本操作

命令示例含义
catcat fileconcatenate, 获取文件内容。在文件很大时会刷屏
headhead filename显示文件的前10行 (默认前10行)
headhead -20 filename显示文件的前20行
tailtail filename显示文件的最后10行 (默认后10行)
tailtail -20 filename显示文件的最后20行
tailtail -20f filename显示文件的最后20行,若文件有新内容,会一直更新,适合看动态日志
nlnl file显示带有行号的文件
grepcat file | grep keyword过滤显示文件的内容
sedsed s/mysql/MySQL/g filename将文件中的mysql替换成MySQL
sedsed s/mysql/MySQL/g filename > newfilename将文件中的mysql替换成MySQL,并写到新文件
moremore file每次显示文件的一页,并允许分页
lessless file与more命令类似, 快捷键比 more 更实用

vim

vim 是一款文本编辑器,在 Linux 中,只要是纯文本的文件,都可以使用 vim 进行编辑。 vi 与 vim 的差别: vi 是 Linux 自带的编辑器,但功能比 vim 弱。所以正常情况下不讨论 vi, 只讨论 vim

安装

shell
yum install vim -y

压缩解压

shell
压缩
tar –cvf jpg.tar *.jpg // 将目录里所有jpg文件打包成tar.jpg
tar –czf jpg.tar.gz *.jpg   //将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gz
tar –cjf jpg.tar.bz2 *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2
tar –cZf jpg.tar.Z *.jpg   //将目录里所有jpg文件打包成jpg.tar后,并且将其用compress压缩,生成一个umcompress压缩过的包,命名为jpg.tar.Z
rar a jpg.rar *.jpg //rar格式的压缩,需要先下载rar for linux
zip jpg.zip *.jpg //zip格式的压缩,需要先下载zip for linux

解压
tar –xvf file.tar //解压 tar包
tar -xzvf file.tar.gz //解压tar.gz
tar -xjvf file.tar.bz2   //解压 tar.bz2
tar –xZvf file.tar.Z   //解压tar.Z
unrar e file.rar //解压rar
unzip file.zip //解压zip

总结
1、*.tar tar –xvf 解压
2、*.gz gzip -d或者gunzip 解压
3、*.tar.gz和*.tgz tar –xzf 解压
4、*.bz2 bzip2 -d或者用bunzip2 解压
5、*.tar.bz2用tar –xjf 解压
6、*.Z uncompress 解压
7、*.tar.Z 用tar –xZf 解压
8、*.rar unrar e解压
9、*.zip unzip 解压

交换分区

可以让小内存服务器跑起大应用,但性能非常低

shell
# cd /var
dd if=/dev/zero of=file bs=1M count=4096  # -- 生成4G的大文件
mkswap file
swapon file
swapon -s
# vim /etc/fstab
/var/file   swap   swap   defaults  0   0

配置DNS

shell
# vim /etc/resolv.conf
nameserver 114.114.114.114
nameserver 114.114.115.115

字符替换

  1. 将当前目录下包含jack串的文件中,jack字符串替换为tom
shell
sed -i "s/jack/tom/g" `grep "jack" -rl ./`
  1. 将某个文件中的jack字符串替换为tom
shell
sed -i "s/jack/tom/g" test.txt

查找文本内容

从根目录开始查找所有扩展名为.log的文本文件,并找出包含”ERROR”的行

shell
find / -type f -name "*.log" | xargs grep "ERROR"

例子:从当前目录开始查找所有扩展名为.in的文本文件,并找出包含”thermcontact”的行

shell
find . -name "*.in" | xargs grep "thermcontact"

时间同步

查看时间

shell
date

安装时间同步工具

shell
yum install -y ntpdate

复制时区信息

shell
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

进行一次同步:

shell
ntpdate us.pool.ntp.org

自动定时同步时间:

shell
# crontab -e
0-59/10 * * * * /usr/sbin/ntpdate us.pool.ntp.org | logger -t NTP

查看熵池

shell
watch -n 1 cat /proc/sys/kernel/random/entropy_avail

写不下去了,这里太全了。。

Released under the MIT License.