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参数介绍

【Linux基础】Linux常用命令汇总的更多相关文章

  1. Linux基础之常用命令整理(一)

    Linux 操作系统的安装 如今比较流线的linux操作系统 Centos Redhat  Fedora Ubuntu, 安装操作系统的提前是要有操作系统的镜像文件(.iso文件)并且必须为系统指定一 ...

  2. Linux基础、常用命令

    Linux作为IT程序员必知必会知识,将自己学习到的和最近工作常用的一些命令进行总结,作为我结束过去生活和开始类程序员的序吧! 如果你想系统性学习的话,还是建议看书(鸟哥的Linux私房菜)或网上视频 ...

  3. linux vi(vim)常用命令汇总(转)

    前言 首先解析一个vim vi是unix/linux下极为普遍的一种文本编辑器,大部分机器上都有vi的各种变种,在不同的机器上常用不同的变种软件,其中vim比较好用也用的比较广泛.vim是Vi Imp ...

  4. Linux基础之常用命令(1)

    一 linux命令的格式 1.命令  [选项]  [参数] ls  list    显示目录下内容 ①  命令名称:ls 命令英文原意:list 命令所在路径:/bin/ls 执行权限:所有用户 功能 ...

  5. linux之GDB常用命令汇总

    查看gdb的版本号 (1)rpm -q gdb 会显示是否安装gdb及版本号 (2)gdb --version也可以 breakpoint b main; b 20; 设置断点 breakpoint ...

  6. Linux基础之常用命令整理(二)

    Linux系统启动流程 bios(找到启动介质) --> mbr(找到boot loader  512B 446引导信息 64分区信息 2 标志位 ) -->grub(选择操作系统或者内核 ...

  7. Linux基础之常用命令篇

    一.命令的基本格式 [root@localhost~] root为用户名 -表示当前所在位置 localhost主机名 ‘#’超级用户 '$" 普通用户 命令的基本格式: 命令 [选项] [ ...

  8. Linux基础和常用命令

    经常使用的命令: #查看端口被占用情况 netstat -tunlp|grep #查看java进程 ps -ef|grep java #压缩前端工程 rar a -ep1 ./update/win32 ...

  9. linux 性能分析常用命令汇总

    CPU性能分析工具: vmstatpssartimestracepstreetop Memory(内存)性能分析工具:vmstatstracetopipcsipcrmcat /proc/meminfo ...

  10. 【原创】Linux基础之常用命令

    1 磁盘.cpu.内存相关 查看全部设备信息 # lspci 查看整体磁盘空间占用情况 # df -h 查看整体磁盘inode占用情况 # df -i 查看文件详细信息 # ls -l $path 查 ...

随机推荐

  1. MySQL分页查询性能优化

    当需要从数据库查询的表有上万条记录的时候,一次性查询所有结果会变得很慢,特别是随着数据量的增加特别明显,这时需要使用分页查询.对于数据库分页查询,也有很多种方法和优化的点.下面简单说一下我知道的一些方 ...

  2. SVN、CVS、VSS区别

    废话不多说,撸起袖子敲黑板 !~~ #首先向大家简要描述一下SVN与CVS.VSS的介绍与对比: 介绍: 三种都是版本控制软件, 多数用于源代码管理1.CVS(Concurrent Version S ...

  3. Java基础IO流(四)序列化与反序列化

    对象的序列化与反序列化: 对象的序列化,就是将Object转换成byte序列,反之叫对象的反序列化. 序列化流(ObjectOutInputStream),是过滤流 -------writeObjec ...

  4. Flask 系列之 FlaskForm

    通过使用 FlaskForm ,可以方便快捷的实现表单处理. 说明 操作系统:Windows 10 Python 版本:3.7x 虚拟环境管理器:virtualenv 代码编辑器:VS Code 实验 ...

  5. jQuery插件之上传文件ajaxfileupload.js源码与使用

    在网页应用中,一般会用到上传文件或者图片什么的到服务器,那么可以用ajaxfileupload.js,但是在使用ajaxfileupload.js时候,当服务器返回的json带有&符号的时候, ...

  6. 洛谷P4103 [HEOI2014]大工程(虚树 树形dp)

    题意 链接 Sol 虚树. 首先建出虚树,然后直接树形dp就行了. 最大最小值直接维护子树内到该节点的最大值,然后合并两棵子树的时候更新一下答案. 任意两点的路径和可以考虑每条边两边的贡献,\(d[x ...

  7. Mixing a dll boost library with a static runtime is a really bad idea错误的解决

    作者:朱金灿 来源:http://blog.csdn.net/clever101 同事在使用boost库时遇到一个问题,在编译时出现一个错误:Mixing a dll boost library wi ...

  8. Linux 安装 Mysql 5.7.23

    切换目录 cd /usr 创建目录 mkdir mysql cd mysql 下载 Mysql Yum wget http://repo.mysql.com/mysql57-community-rel ...

  9. Android Studio 之 注释模板

    我们看有的项目的文档,会发现它的注释写的很好看,很规范. 而如果你的代码注释还是在用简单的 // 或者 /**/  ,那就学习一下在Android Studio中如何进行注释模板的设置 首先看下面代码 ...

  10. leetcode-14最长公共前缀

    leetcode-14最长公共前缀 题目 编写一个函数来查找字符串数组中的最长公共前缀. 如果不存在公共前缀,返回空字符串 "". 示例 1: 输入: ["flower& ...