3-1文件目录操作命令(cd pwd mkdir rmdir rm)

绝对路径:由根目录(/)开始写起的文件名或目录名称, 例如 /home/dmtsai/.bashrc;

相对路径:相对于目前路径的文件名写法。 例如 ./home/dmtsai 或 ../../home/dmtsai/ 等等。

1.cd命令(change directory),切换目录

cd .     ==>当前目录
cd .. ==>返回上一层目录
cd - ==>返回上一次访问目录
cd ~ ==>返回家目录

2.pwd命令(print working directory),显示当前所在目录

pwd
pwd -P ==>显示出确实的路径,而非使用连结 (link) 路径,加-P

3.mkdir命令(make directory),创建目录

mkdir /test1
mkdir -p /test1/test2/test3 ==>创建递归目录,必须带-p

4.rm命令(remove directory)删除命令

rmdir /test1      ==>删除空目录
rmdir -p /test1 ==>删除目录和子目录

3-2文件目录管理命令(ls scp cp mv rm)

1.ls(list)查看文件或目录

ls -a    ==>列出全部文件,含隐藏文件
ls -l ==>列出文件名、属性、权限
ls -d ==>仅列出目录
ls -al ==>列出所有文件及属性、权限,含隐藏文件
ls -l /tmp/test1 /tmp/test2 ==>列出多个指定目录的文件

2.cp(copy)复制文件或目录

cp -r /etc  /tmp    ==>复制目录,加-r
cp ~/.bashrc /tmp/bashrc ==>复制文件,并更改名称
cp -a /var/log/wtmp wtmp2 ==>保留原有文件的属性和权限,加-a
cp source1 source2 source3 dir ==>复制多个文件或目录到dir

3.scp (secure copy)基于ssh登陆进行安全的远程文件拷贝

scp local_file remote_username@remote_ip:remote_folder
scp local_file remote_username@remote_ip:remote_file

4.mv(move)移动文件或目录

mv file1 file2   ==>文件变更名称
mv file1 dir1 ==>文件移动到指定目录
mv dir1 dir2 ==>目标目录已存在,将源目录移动到目标目录;目标目录不存在则改名
mv -f dir1 dir2 ==>操作前无任何提示,强制执行,加-f

5.rm(remove)删除文件或目录

rm -rf  ~/.bashrc  ==>删除目录及子目录所有文件,加-r;无确认信息,强制执行,加-f
rm -i ~/.bashrc ==>删除前提示防止误删,加-i

 3-3文件内容修改命令

1.VI 编辑器基本使用方法

2.VI命令模式下大小写转换

3.VI命令模式下删除拷贝与粘贴

4.VI命令模式下替换

:s/p1/p2/g       ==>将当前行中所有p1均用p2替代
:n1,n2s/p1/p2/g ==>将第n1至n2行中所有p1均用p2替代
:g/p1/s//p2/g ==>将文件中所有p1均用p2替换

5.VI命令模式下其它常用命令

 set nu  ==>显示行号
u ==>回退上一次操作
. ==>重复进行上一次操作
/xxx ==>查找某个关键字“xxx”
:x ==>直接跳转到第x行 连续按两次大写的“Z”键 ==>保存退出
连续按两次“Esc”键 ==>确保vi在命令模式下。

3-4文件内容查看命令

3-5文件大小查看命令

3-6文件压缩打包命令

3-7grep命令

 RPM命令

1.模式与参数(root权限才可以执行rpm)

.安装模式:rpm–i
.查询模式:rpm–q
.验证模式:rpm–V或–verify
.删除模式:rpm–e
.安装参数:rpm <model> <option> --force 即使覆盖属于其它包的文件也强迫安装
--nodeps 如果该RPM包的安装依赖其它包,即使其它包没装,也强迫安装。

2.使用示例

rpm -ivh   ==>安装一个包
rpm -Uvh ==>升级一个包
rpm -e ==>移走一个包
rpm -qa ==>列出所有被安装的rpm package

脚本中有DOS字符^M

定位问题:file查看,cat -v 查看

解决问题:dos2unix

 字符串截取

str="abcdef" 

echo ${str:}           # 从第二个位置开始提取字符串, bcdef
echo ${str::} # 从第二个位置开始提取3个字符, bcd
echo ${str:(-):} # 从倒数第二个位置向左提取字符串, abcde
echo ${str:(-):} # 从倒数第二个位置向左提取6个字符, cde

shell include 不止可以包含函数,也可以包含全局变量。

. /home/macg/testshell/testlib

if [ $SYSTEM = "Linux" ] ; then # 如果是linux话输出linux字符串
echo "Linux"
elif [ $SYSTEM = "FreeBSD" ] ; then 
echo "FreeBSD"
elif [ $SYSTEM = "Solaris" ] ; then
echo "Solaris"
else
echo "What?"
fi # 判断结束,以fi结尾

参考文档:

Linux文件和目录管理

rpm常用命令及rpm参数介绍

最新文章

  1. Unity3D在Windows的全屏和跨屏(双屏)方案
  2. conn,stmt,rset 的关闭(规范)
  3. debian防火墙firestarter
  4. Javascript DOM编程艺术
  5. 最近遇到的两个IE下的问题(IE兼容问题)
  6. 使用jquery的js的页面实现例子
  7. 怎么把自己电脑上开发的项目发布到自己电脑IIS上面?
  8. NetBeans主题配色方案加设置.md
  9. Linux服务器集群系统(LVS)
  10. centOS中mysql一些常用操作
  11. python的datetime模块处理时间
  12. java输出格式-----System.out.printf()
  13. iOS - 集成高德SDK解决Marker点重复点击无效问题
  14. leetcode979
  15. [转]Material使用08 MdDialogModule、MdAutocompleteModule
  16. C++拷贝控制
  17. Presto 学习
  18. centos7安装mysql mariadb
  19. JVM—JVM内存模型
  20. SpringBoot详细研究-04部署测试与监控

热门文章

  1. Docker在Linux上运行NetCore系列(四)使用私有Nuget与多个本地包引用运行ASPNetCore
  2. 对象引用对于非静态的字段、方法、属性Program.Print()是必需的
  3. c# 解密微信encryptedData字段
  4. oracle expdp自动备份脚本
  5. [angularjs] angularjs系列笔记(六)http
  6. 29.C++- 异常处理
  7. 4.5 explain 之 ref
  8. php环境安装
  9. idea项目git版本回退
  10. JavaScript初学者必看“this”