linux基础命令

1.Linux的解压,压缩

  -c  建立压缩档案
  -x  解压
  -t   查看内容
  -r   向压缩归档文件末尾追加文件
  -u   更新原压缩包中的文件

这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用,但只能用其中一个。下面的参数是根据需要再解压或解压档案时可选

  -z    gzip属性
  -j    bz2属性 
  -Z    compress属性
  -v    显示所有过程
  -O    将文件解开到标准输出

-f 使用档案名字,切记,此参数是最后一个参数,后面只能接档案名

  打包:tar czvf name.tar name
  解压:tar zxvf name.tar

2.vim文本使用

1. 进入文档
      vim filename
2. 编辑文档
      输入 i
3. 退出文档
      先Esc键进入命令行模式
      再 :wq 保存并退出    
      或    :q!  强制退出
4. 命令模式的一些常规操作
      1. 设置行号
          :set nu
      2. 方向:左下上右
          h:左    j:下    k:上   l:右移
      3. 字符选择:v
         行选择:V
         块选择:ctrl + v
      4.复制:y
      5.粘贴:p
      6. 查找
          /  从光标处向后搜索:在“/”后输入要搜索的内容,按Enter键开始搜索
          ?从光标处向前搜索:在“?”后输入要搜索的内容,按Enter键开始搜索
      7. 撤销:u

3.查看文本

 1. 查看前3行
      head -3 filename
 2. 查看后3行
     tail -3 filename
 3. 实时查看
     tail -f filename
  4. 过滤 注释 查看文本  (grep正则表达式)
      cat filename | grep -v "^#"

4.文件和目录

cd

  cd ..      返回上一级目录
  cd ../..    放回上两级目录
  cd ~username  进入个人的主目录
  cd -      返回上次所在的目录

ls

  ls    查看目录中文件
  ls -l   显示文件和目录的详细资料
  ls -a  显示隐藏文件

mkdir

  mkdir filename1 ...    创建一个或多个文件夹
  mkdir -p n1/n2/n3      创建一个目录树

rm

  rm filename    删除文件并提示是否删除
  rm -f   filename   删出文件不提示
  rm -r  filename/catalogname    递归删除文件或目录
  rm -rf   filename/catalogname    递归删除不提示

cp

  cp file1 file2    复制文件
  cp dir/ *     复制一个目录下的所有文件到当前工作目录
  cp -a /tmp/dir1    复制一个目录到当前工作目录(-a保持文件属性完整性,-r 跟随目录属性)
  cp -a dir1 dir2

ln

  ln -s file1 lnk1   创建一个指向文件或目录的软链接
  ln file1 lnk1 创建一个指向文件或目录的物理链接

其他

    touch  file    创建文件
    tree       显示文件和目录由当前目录开始的树形结构
    pwd    显示当前工作路径

5. 文件搜索

find

find / -name file 从  / 开始进入根文件系统搜索文件和目录
find / -user user1  搜索属于用户 ‘user1’的文件和目录
find /home -name \*.bin    再目录 /home中搜索带有 .bin 结尾的文件
find /usr/bin -type f -mtime  -10   搜索在10天内被创建或者修改过的文件

6. 挂载一个文件系统

mount

mount /dev/hda2 /mnt/hda2    挂载一个叫hda2盘  - 确定目录 /mnt/hda2 已存在
umount /dev/hda2    卸载一个叫hda2的盘-先从挂载点 /mnt/hda2退出
mount /dev/sda1 /mnt/usbdisk    挂载一个usb捷盘或闪存设备

7.磁盘空间or当前内存

df -h     显示已经挂载的分区列表
du -sh /data    估算目录 data 已经使用的磁盘空间
du -skh * | sort -rn    以容量大小排序(从大到小)
free -h     当前内存使用情况

8.用户和群组

group

groupadd group_name   创建一个新用户组
groupdel  group_name    删除一个用户组
groupmod -n new_group_name old_group_name    重命名一个用户组

user

useradd user1    创建一个新用户
userdel -r user1   删除一个用户(-r排除主目录)

passwd

 passwd     修改口令
 passwd  user1    修改一个用户的口令(只允许root执行)

其他

  pwck    检查 /etc/passwd文件格式和语法修正以及存在的用户
  grpck  检查 /etc/passwd文件格式和语法修正以及存在的群组

9. 文件的权限

文件权限读解(参考文档)

ls -lh  显示权限

chmod

chmod [who] [opt] [mode] 文件/目录名

 who:
    u:文件
    g:同组用户
    o:其他用户
    a:所有用户
 opt:
     +:添加某个权限
     -:取消某个权限
     =:赋予给定的权限,并取消原来的权限
 mode:
        r:可读
        w:可写
        x:可执行

chgrp

  chgrp group1 file1 改变文件的群组

chown

  chown user1:group1 file1 改变一个文件的所有人和群组属性

10.文件的特殊属性

chattr

  chattr +a file1    只允许以追加方式读写文件
  chattr +c file1    允许这个文件能被内核自动压缩/解压
  chattr +d file1     在进行文件系统备份时,dump程序将忽略这个文件
  chattr +i file1    设置成不可变的文件,不能被删除,修改,重命名或者链接
  chattr  +s file1    允许一个文件被安全的删除
  chattr  +S file1  一旦应用程序对这个文件执行了写操作,使系统立刻把修改的结果写入磁盘
  chattr +u file1     若文件被删除,系统会允许你在以后恢复这个被删除的文件

lsattr

  lsattr    显示特殊的属性  

11.yum软件包升级器

  yum install package_name.rpm   下载并安装一个rpm包
  yum localinstall package_name.rpm  将安装一个rpm包,使用自己的软件仓库为你解决所有以来关系
  yum update package_name.rpm    更新当前系统中所有安装的rpm包
  yum remove package_name  删除一个rpm包
  yum list    列出当前系统中安装的所有包
  yum search package_name    在rpm仓库中搜寻软件包
  yum clean packages    清理rpm缓删除下载的包
  yum clean headers    删除所有头文件
  yum clean all   删除所有缓存的包和头文件    

12.deb包

dpkg -i package.deb    安装/更新一个deb包
dpkg -r pacage_name    从系统删除一个deb包
 dpkg -l    显示系统中所有已经安装的deb包
  dpkg -l | grep httpd  显示所有名称中包含 httpd 字样的deb包
  dpkg -s package_name    获得已经安装在系统中一个特殊包信息
  dpkg -L package_name    显示系统中已经安装的一个deb包所提供的文件列表
  dpkg -contents package.deb    显示尚未安装的一个包所提供的文件列表
  dpkg -S /bin/ping      确认所给的文件由哪个deb包提供

13. APT软件工具

  apt-get install pacage_name    安装/更新一个deb包
  apt-cdrom  insall package_name  从光盘安装/更新一个deb包
  apt-get update    升级列表中的软件包
  apt-get upgrade  升级所有已安装的软件
  apt-get remove package_name    从系统删除一个deb包
  apt-get check   确认依赖的软件仓库正确
  apt-get clean    从下载的软件包中清理缓存
  apt-cache search searched-package    返回包含所要搜索字符串的软件包名称

14.网络

netstat参考文档
1. netstat:一个监控TCP/IP网络的非常有用的工具,
它可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息

15、一些常规操作

查看在线用户参考文档

 1、w:查看在线用户
 2、last:查看用户登录历史
 3、pkill -kill -t TTY(名)            踢出用户

16、高效的Linux技巧

参考文档

1、命令行
      ctrl+k:删除从光标到结尾处
      ctrl+w:删出一个单词(以空格隔开的字符串)
      ctrl+a:光标移动到命令开头
      ctrl+e:光标移动到命令结尾
      alt+f:光标向后移动一个单词
      alt+b:光标向前移动一个单词
2、历史命令
      !num:num代表数字,可开苏执行历史命令
      history:显示大量历史命令 
3、进程
      进程名称:
          pgrep nginx      查找nginx的进程号
       or
          pidof nginx      查找nginx的进程号
          killall nginx      杀死nginx进程
          pkill nginx        杀死nginx进程
      进程号:
          kill -9 pid        杀死pid进程(进程号)
      进程时间:
            ps -p pid -o lstart,etime    pid为进程号
4、多条命令执行 
      1.在每个命令结束后加【;】,但上一条命令的失败,不会影响到下一条命令的执行
        例1:cd /data;pgrep nginx
    2.在每个命令结束后加【&&】,上一条命令的成功才能执行下一条命令
        例2:cd /data&&pgrep nginx
5、查看压缩日志文件
      zcat test.gz
   or
      zless test.gz
      结果:test.log
6、不挂断地运行命令(输入框中执行程序在后台执行)
     1、后台挂载程序
        nohup Command [Arg] [&]      &用于后台运行
            无论是否将nohup命令的输出重定向到终端,输出都将附加到当前目录的 nohup.out 文件中
           (文件能创建或打开以用于追加,否则command参数的命令不可调用)
     2、查看运行的后台程序
        jobs -l
              jobs命令只能查看当前终端生效的,关闭终端后,在另一个终端jobs无法查看,
              可以通过其他方式查看运行的进程

17.linux下生活上需求命令

 1.查看日期
    date             查看当前日期
    cal 月 年      通过日历显示当前年月的信息
            例子:  cal 5 2019    查看2019年5月的日期

8、查看Linux的登录情况

1、who:查看当前登录用户信息
  who /var/log/wtmp   输出包括用户名,终端类型,登录日期以及远程主机
     -b    查看系统最近一次启动时间
     -H    打印每列的标题
2、users    打印当前登录的用户,每个显示的用户名对应一个登陆会话

3、last:查看用户登录历史(默认打印所有用户登录信息)
      此命令会读取 /var/log/wtmp文件;/var/log/btmp可以显示远程登录信息。
      last 用户名  打印某个用户登录信息
  选项:
      -x    显示系统开关机以及执行等级信息
      -a    将登录ip显示在最后一行
      -f    读取特定文件
      -d    将ip转换成主机名
      -t      查看指定时间的用户登录历史
4、lastlog    查看所有用户最近一次登录历史
    命令将读取 /var/log/lastlog文件,用户排列顺序按照/tec/passwd中的顺序
 选项:
    -u    查看某个用户的最后一次登录历史
          例:lastlog -u test
    -t    查看最近几天之内的用户登录历史
           例:lastlog -t  1
    -b    查看指定天数之前的用户登录历史
             例:lastlog -b 60
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • netstat查看端口 # 参数-a (all)显示所有选项,默认不显示LISTEN相关-t (tcp)仅显示tc...
    雷哥说阅读 3,421评论 0 1
  • 本周主要学习的内容:linux基础命令. ls 查看当前文件夹下面内容 pwd: 查看当前所在文件 cd目录名:切...
    张书豪_1f4e阅读 1,850评论 0 0
  • linux的基础命令 1.目录切换命令 cd usr 切换到该目录下usr目录cd ../ 切换到上一层目录c...
    爬行的蚂蚁2725阅读 3,658评论 0 0
  • 听棉,很文艺的一家咖啡店。有猫,有书,有老歌。 翻开一本厚厚的留言册,听陌生人讲他们自己的故事,有悲有喜。 一根浅...
    违愿阅读 1,868评论 0 0
  • 开会到了长沙,第一想着就是看马王堆汉墓,但是到了以后才发现,就是一个土包,什么都没有,连墓道门都没有开,怪不得找清...
    一叶天下阅读 5,205评论 2 3

友情链接更多精彩内容