Linux基础命令

1.ls  查看当前目录

  • -a 显示目录的所有文件信息(包括隐藏文件)
  • -l 以行的形式显示一个文件的详细信息(包括权限,文件大小,名称...)
  • -h 以人类友好的方式显示文件大小
  • ll =ls -al 缩写 部分发行版提供

2.tree  显示当前目录下文件结构

  • 以树状图方式显示文件目录结构

3.cd  切换目录

  • cd 目录 切换到指定目录
  • cd ~ 切换到当前用户的主目录
  • cd . 切换到当前路径
  • cd .. 切换到上一级目录
  • cd - 切换到上一次所在的路径

4.mkdir  创建文件夹

  • mkdir 默认不能直接创建多级目录
  • -p 在创建多级目录时 自动创建其父parents目录
  • mkdir 2/3/4/5 # 失败 不能直接创建多级目录
  • mkdir -p 2/3/4/5 # 创建多级目录时 自动创建不存在的父目录

5.rm  删除文件或者目录

  • rm 文件名  
  • rm -r 目录名
  • 选项:
  • -r 递归删除目录下及其子目录
  • -f 忽略不存在的提示
  • rm -rf / 慎用(删除不会报通知)
  • -i 交互式(需要用户确认删除)
  • -d 删除空目录 ( rm -d 目录 = rmdir 目录,要求目录为空 否则不能删除)

6.cp  拷贝/重命名

  • 形式: cp 选项 源路径/文件名 目的路径
  • 常用选项:
  • -r 递归拷贝目录及其下子目录
  • -i 需要用户确认是否覆盖同名文件<不加 i默认是覆盖的>
  • -v 显示拷贝的文件路径信息
  • -a 保留源文件的属性<权限 时间>
  • 拷贝文件并且改名(cp ./grep.txt TEST/my.txt)


7.mv  移动、重命名 文件或者目录

  • 形式:mv 选项 源路径/源文件 目的路径/新文件
  • 常用选项:
  • -i 交互式(需要用户确认是否覆盖)
  • -v 显示文件的路径信息
  • ------------------------------------
  • 1 移动my.txt文件移动用户主目录
  • 2 移动一个目录到用户主目录
  • 3 重命名一个文件(mv 1.py hello.py)
  • 4 重命名目录 windows 大小不区分 Linux 区分大小写(mv code CODE)
  • 5 移动文件并且改名
    mv mNetAssist-release-amd64.deb CODE/my.deb

  • 6 交互式移动文件 如果目的路径下有源文件 则提示是否覆盖
    mv -i a.txt CODE/my.deb
    mv:是否覆盖'CODE/my.deb'? n

  • 7 显示移动的文件路径信息

    mv -iv a.txt CODE/my.deb
    mv:是否覆盖'CODE/my.deb'? yes
    'a.txt' -> 'CODE/my.deb'

8.curl指令: 发送网络请求

  向百度发送请求

  curl www.baidu.com

9.<,<< 重定向命令,写到文件

  < :覆盖型写入

  << :追加写入

    python train.py > train.log 2>&1 &
    其中> train.log表示标准输出重定向到文件train.log中且是覆盖重写,如果想要追加方式写入,则是>> train.log

    2>&1  表示 将标准错误输出重定向到标准输出(0、1和2分别表示标准输入、标准输出和标准错误信息输出)

  最后一个& 表示后台运行

    等价指令:

      python train.py >& train.log

10. & 将任务放到后台运行

  cp -R original/dir/ backup/dir/

  这个命令的目的是将 original/dir/ 的内容递归地复制到 backup/dir/ 中,如果原目录里面的文件太大,在执行过程中

  终端就会一直被卡住。所以,可以在命令的末尾加上一个 & 号,将这个任务放到后台去执行:

  cp -R original/dir/ backup/dir/ &