Linux常用命令(三)
设置别名
通过别名机制,简化常用的,比较长的命令
设置别名
  alias 命令别名=‘命令 选项’
  例:alias easyls=‘ls -ldh’
  删除别名
  unalias 命令别名
  例:unalias easyls
  永久设置别名(需要重新加载文件)
  vim 用户家目录/.bashrc
  然后在重新加载文件 .bashrc
  每个用户的家目录下都有一个.bashrc的文件,里面存放了别名配置
  我们添加一个命令别名
  然后退出浏览,刷新bashrc文件
  source ~/.bashrc
  复制一个abc目录为123
  成功
复制移动和删除
  cp 【选项】 源文件或者目录 目标文件或者目录
  cp命令的源文件可以是多个。如果是这种情况,目标必须是目录才行
常用选项:
  -f:覆盖目标同名文件或目录时不进行提醒,强行复制。cp是cp -i 的别名,所以除非去.bashrc文件中的别名删除,否则cp -f一样会提示
  -i:覆盖目标同名文件名或目录时提醒用户确认。
  -p:复制时保持源文件的权限、属主及时间标记等属性不变。
  -r:复制目录时必须使用此选项,表示递归复制所有文件及子目录。将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理。
  注:复制多个文件或目录时,目标位置必须是目录,且目标目录必须已经创建
  -R:或–recursive递归处理,将指定目录下的文件及子目录一并处理
  -a:复制时,尽可能保持文件的结构和属性(但不保持目录结构)等同于-dpR。
  -l:创建一个硬链接
  -s:创建一个软链接
  -d:复制软连接而不是软连接文件
cp -p
复制是保持源文件的权限、属主及时间标记等属性不变
  cp -p 源文件 目标文件
  例子:root用户使用cp命令,复制文件abc.txt为123.txt
  root用户使用cp -p命令,复制文件abc.txt为456.txt
  cp -p 命令复制后,新文件456.txt 的属主,属组,时间没有改变,和源文件相同
cp -r
复制目录时必须使用此选项,表示递归复制所有文件及子目录
  cp -r 源目录/文件名 目标目录/文件名
  例:cp -r abc 123
cp -s和cp -l创建软连接和硬链接,类似于ln命令
cp -s 源文件 链接文件 //软链接
  cp -l 源文件 链接文件 //硬链接
cp -d 复制软连接而不是软连接文件
cp -d 源文件 目标文件
  (不常用)
  cp复制软链接时,如果不加选项-d ,只是复制符号文件里的内容。而加上选项 -d 后,相当于再次建立了一个新的软链接
cat查看文件内容
cat 源文件
mv移动文件目录或者重命名
mv可以将制定文件或目录转移位置。如果目标位置与源位置相同,则相当于重命名操作
  mv 【选项】 源文件或目录 目标文件或目录
mv移动单个文件或目录
  mv 源文件或目录 目标文件或目录
  默认为移动后文件或目录名与源文件或目录相同
mv移动多个文件或目录
  mv 源文件或目录1 源文件或目录2… 目标目录
mv重命名
  mv在移动文件或目录时,可以在目标位置重命名。可以直接原地移动来重命名
mv的重命名只能对单个文件或目录进行操作,如果想一次性重命名多个,可以结合通配符使用rename命令。
  rename 旧字符 新字符 目标文件 //可以配合通配符进行操作
例:将以.txt结尾的文件改名为.doc结尾
  rename txt doc *.txt
rm 删除文件或目录
rm 【选项】 要删除的文件或者目录 //rm的参数可以是多个,还可以配合通配符*?[ ]使用
选项:
  -f :删除文件或目录时不进行提醒,而直接强制删除。
  -i :删除文件或目录时提醒用户确认。(y表示删除, n表示不删除)
  -r :删除目录时必须使用此选项,表示递归删除整个目录树(谨慎使用)。

  删除多个文件

which 查找命令文件存放目录
搜索范围由环境变量$PATH决定(echo PATH)which【−a】命令/程序名which不加上选项−a默认在PATH) which 【-a】 命令/程序名 which 不加上选项 -a 默认在PATH)which【−a】命令/程序名which不加上选项−a默认在PATH 的路径中,从左向右查找,找到第一个后就不再查找。选项 -a 可以让whicn 在所有搜索路径中查找
  因为内部命令没有独立的文件,所以which 在查找内部命令时,将找不到程序
find递归查找
find 【查找范围】查找条件表达式
  //find是全盘递归精细查找,能够查找到隐藏文件,也会消耗大量的cpu资源。
查找条件:
  -name:按照文件名字(-name 后面的参数需要加上双引号“ ”)
  -size:按照文件大小(大于+,小于-)
  -user:按照文件属主
  -type:按照文件类型
例:find查找/var目录中txt结尾的文件
在/var目录中查找大于100M的文件
  在/var目录中,查找属主是test的文件
  在/opt目录中查找类型是目录的文件
find 和逻辑运算符一起使用,实现多个查找条件
-a表示并且(and)所有条件都要满足
  -o表示或(or)条件只需满足一个
  例:在/opt目录中查找文件类型是目录,并且属主是root的文件
  find /opt -type d -a -user root
exec,find的额外动作
find 【查找范围】 条件表达式 -exec linux系统命令 {};
-exec 参数后面跟的是Linux系统命令,它是以分号;为结束,在分号前面加上反斜杠\转义符,取消 分号;的特别释义
  大括号{}代表find查找出的结果
  例:
  在/yonghu目录下找到类型是文件并且名字以.doc结尾的,然后删除
  find /yonghu -type f -a -name “*.doc” -exec rm -rf {} \;
 新一代开源开发者平台 GitCode,通过集成代码托管服务、代码仓库以及可信赖的开源组件库,让开发者可以在云端进行代码托管和开发。旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。
更多推荐


所有评论(0)