linux基础命令

Linux


1. mac进入linux

命令: ssh 用户名@IP地址

localhost:~ h$ ssh root@10.95.99.168
root@10.95.99.168's password: 输入密码即可

修改密码: passwd

mac向linux传文件: scp -r 文件夹/ root@10.95.97.158:/文件夹

常用目录:

  • / 根目录
  • /bin 命令保存的目录
  • /boot 启动目录
  • /dev 设备文件目录
  • /etc 配置文件保存目录
  • /home 普通用户的目录
  • /root root管理员目录
  • /lib 系统库保存目录
  • /mnt 系统挂载目录
  • /media 另一个挂载目录
  • /tmp 保存临时文件
  • /proc 和 /sys 内存目录,不能直接操作
  • /usr 软件系统资源目录
    • /usr/bin 普通用户的系统命令
    • /usr/sbin 超级用户的系统命令
  • /var 系统文档目录

2. shell命令

  • 查看命令帮助 man 命令名称 或者 部分命令名称 -h

  • 查看当前路径 pwd

  • 查看文件 ls

    常用参数:

    • -a 显示全部文件
    • -l 显示文件详情
    • -i 查看inode节点
    • -h 更人性化显示
  • 文件操作

    • 新建空文件 touch 文件名
    • 查看文件 cat 文件名
    • 编辑文件 vim 文件名 (vim比vi功能更强大)
    • 复制文件 cp 文件名 目的文件夹名及文件名
      • -r 复制目录
      • -p 连带文件属性复制
      • -d 若源文件是链接文件,则复制链接属性
      • -a 相当于 -pdr
    • 链接文件 ln 源文件 链接名
      • -s 创建软链接(源文件写绝对路径,否则如果不在同一目录下会报错)
  • 文件夹操作

    • 新建 mkdir 文件夹名
    • 递归创建 mkdir -p 文件夹名
    • 删除 rm -rf 文件夹名,-r为循环删除 -f为强制删除
    • 移动及重命名 mv 源文件名 新文件名
  • 搜索

    1. locate 文件名(大致匹配)

          
      locate搜索的是 /var/lib/mlocate 数据库中的内容(更新频率大概24h,需要手动立即更新可执行命令updatedb),updatedb更新依据的是/etc/updatedb.conf文件的内容进行搜索

    2. whereis 系统命令名

      • -b 只看可执行文件
      • -m 只看可帮助文件
    3. find 搜索范围 搜索条件(精确匹配)

      1. 按照文件名搜索

        find / -iname file.log(在/根目录查找名字为file.log的文件,-i是忽略大小写)

        • 通配符:*任意多个字符; ?任意一个字符; []括号内任意一个字符
      2. 按照所有者搜索

        find . -user root(在当前目录下查找所有者为root的文件)

        find . -nouser(在当前目录下查找没有所有者的文件)

      3. 按照时间搜索

        find / -atime +10(在/根目录下查找10天之前访问过的文件)

        • -atime访问文件时间; -mtime修改文件时间; ctime 修改文件属性时间;
        • +1010天之前; 1010天前的当天; -10十天内;
      4. 按照文件大小搜索

        find / -size +10k(在/根目录下查找大于10k的文件)

        • +10k大于10k; 10k等于10k; -10k小于10k;
        • k必须小写; M必须大写
      5. 按照inode节点查找

        find / -inum 888888(在/根目录下查找节点号为888888的文件)

      6. 逻辑选项

        find / -size +10k -a -size -20k(查找大于10k并且小于20k的文件)

        • -a且; -o
      7. find之后执行文件命令

        find / -inum 888888 -exec rm -rf {} \;(找到节点为888888的节点并删除)

    4. grep 参数 字符窜 文件名

      grep -i "str" file.md(在file文件中找到含有字符串“str”的行)

      • -i 忽略大小写
      • -v 排除指定字符窜
  • 压缩文件

    1. zip文件

      • zip 压缩文件名 源文件
      • zip -r 压缩名 源目录
      • unzip 压缩文件(解压)
    2. tar.gz文件

      • tar -zcvf 压缩包名.tar.gz 源文件(压缩文件为tar.gz的格式)

      • tar -zxvf 压缩包名.tar.gz(解压格式为tar.gz的文件)

      • tar -zxvf 压缩包名.tar.gz -C /tmp(-C选择解压后的路径)

      • tar -jcvf 压缩包名.tar.gz 源文件(压缩文件为tar.bz2的格式)

        • -c: 打包
        • -v: 显示过程
        • -f: 指定打包后的文件名
  • 历史命令

    history(查看所有的历史命令)

    • -c: 清空所有的历史
    • -w: 把缓存的历史命令写入到~/.bash_history
    • !n: 重复执行第n条历史命令
    • !!: 重复执行上一条命令
    • !字符串: 重复执行最后一条以该字符串开头的命令
  • 权限

    权限位共有十位,比如:-rwxrw-r--

    第一位“-” 二到四位“rwx” 五到七位“rw-” 八到十位“r--”
    文件类型 u所有者 g所属组 o其他人
    • 文件类型:“-”是文件;“d”是目录;“l”是软连接
    • “r”是读;“w”是写;”x“是执行
  • 关机和重启

    shutdown -r 12:00 &(12:00时重启,“&”符号是后台符,程序放入后台执行)

    • -h: 关机
    • -r: 重启
    • -c: 取消前一个命令
  • 系统运行级别

    init 数字(切换系统等级,由 /etc/inittab 文件控制)

    • 0 关机
    • 1 单用户,用于进行修复,启动最小程序
    • 2 不完全多用户
    • 3 完全多用户,即常用字符界面
    • 4 未分配
    • 5 图形界面
    • 6 重启

    runlevel(查看系统等级)

  • 挂载

    mount(查看系统中的已经挂载的文件)

    • -a 根据/etc/fstab的配置自动挂载文件

    mount -t 文件系统 -o 特殊选项 设备 文件名 挂载点

    • -t: 比如ext4(硬盘分区), iso9660(光盘)
    • -o: remount, exec/noexec, rw/ro等

    mount -t iso9660 /dev/sr0 /mnt/cd(把光盘挂载到文件/mnt/cd中)

    umount dev/sr0或者umount mnt/cd(卸载光盘)

    fdisk -l #可以查看已经识别的分区,从而知道U盘的设备名
    mount -t vfat /dev/sdb1 /mnt/usb #把U盘挂载到/mnt/usb中,注意:U盘设备名不一定是sdb1,需要上一步查看
    
  • 查看用户

    1. w 查看登录的用户信息
    2. who 查看登录的用户信息,比上一条信息少
    3. last 查看之前所有用户登录信息,实际查询的是 /var/log/wtmp 文件
    4. lastlog 查看所有的用户,实际查询的是 /var/log/lastlog 文件
posted @ 2017-10-15 23:25  日含  阅读(147)  评论(0编辑  收藏  举报