Linux基础操作

主要内容

  1. 文件管理命令
  2. 目录管理命令
  3. 文件操作命令
  4. vim操作

文件管理命令

在linux中,一切都是文件,其文件目录结构是树形,“/”称为根目录。

/bin:bin是Binary的缩写, 这个目录存放着最经常使用的命令。 /boot:这里存放的是启动openEuler时使用的一些核心文件,包括一些连接文件以及镜像文件。 /dev :dev是Device(设备)的缩写, 该目录下存放的是openEuler的外部设备,在openEuler中访问设备的方式和访问文件的方式是相同的。 /etc:这个目录用来存放所有的系统管理所需要的配置文件和子目录。 /lib:这个目录里存放着系统最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。 /media:openEuler系统会自动识别一些设备,例如U盘、光驱等等,当识别后,openEuler会把识别的设备挂载到这个目录下。 /mnt:系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱里的内容了。 /opt: 这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。

/proc:这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。 /root:该目录为系统管理员,也称作超级权限者的用户主目录。 /run:是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有/var/run目录,应该让它指向run。 /sbin:这里存放的是系统管理员使用的系统管理程序,s就是Super User的意思。 /srv:该目录存放一些服务启动之后需要提取的数据。 /sys:这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统sysfs。 /tmp:这个目录是用来存放一些临时文件的。 /usr:这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program files目录。 /var:这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。 /home:用户的主目录,在openEuler中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。

绝对路径:. 表示当前目录 ..表示上级目录

  1. pwd命令
    pwd命令用于打印出当前的工作目录。 pwd命令有两个选项,-L 和 -P,其作用类似于cd 命令的同名选项。 -L 目录连接链接时,输出连接路径。 -P 输出物理路径。
  2. cd命令
    cd /usr 进入目录 /usr 中。 cd … 进入(退到)上一层目录,两个点代表父目录。 cd . 进入当前目录 cd 不带参数,则默认回到家目录。 cd - 进入前一个目录,适用于在两个目录之间快速切换。 cd ~ 进入家目录
  3. 列出文件信息ls命令
    ls 列出当前目录下的所有文件和目录(隐藏文件除外)
  4. ls -l 显示详细信息 ls -A 显示隐藏的文件和目录(不包括 . 和 …) ls -a 显示隐藏的文件和目录(包括 . 和 …) ls -t 按时间排序 ls -S 按大小排序 ls -X 按扩展名排序 ls -r 反过来排序 ls -1 一行显示一个文件 ls -lh -h 选项用人类易读的格式显示大小信息 ls -x 逐行显示,而非默认的逐列显示 ls -l /bin/bash 列出指定文件的信息 ls -l / 列出指定目录的内容 ls -ld / -d 选项用于列出目录本身的信息,而非目录的内容 ls -l file1 file2 可以同时列出多个文件
  5. gzip命令
    gzip是经常使用的一个对文件进行压缩和解压缩的命令。 gzip不仅可以用来压缩大的、较少使用的文件以节省磁盘空间。 语法:gzip[参数][文件或者目录] -d或–decompress或----uncompress 解开压缩文件。 -f或–force 强行压缩文件,不理会文件名是否存在以及该文件是否为符号连接。 -l或—list 列出压缩文件的相关信息。 -r或–recursive 递归处理,将指定目录下的所有文件及子目录一并处理。 -v或–verbose 显示指令执行过程。
  6. tar命令
    tar命令可用于打包文件,把多个文件打到一个包中,方便数据的移动。 语法:tar [OPTION…] [FILE] -c 建立新的压缩文件。 -x 从压缩的文件中提取文件。 -t 显示压缩文件的内容。 -z 支持gzip解压文件。 -j 支持bzip2解压文件。 -v 显示操作过程。 -f 指定压缩的文件名字。

目录管理命令

  1. mkdir命令
    mkdir命令用于创建目录(文件夹)。 语法:mkdir [OPTION]… DIRECTORY… 参数: -m :配置文件的权限,直接配置,不需要看默认权限 (umask) 的脸色。 -p :直接将所需要的目录(包含上一级目录)递归创建起来! mkdir命令可以一次性创建多个目录,如果目录已经存在,默认会报错,-p选项可以使mkdir 命令在这种情况下不报错,-p选项还可以用于自动创建不存在的父目录。
  2. rmdir命令
    rmdir命令用于删除空目录(文件夹)。 语法:rmdir [OPTION]… DIRECTORY… 参数:-p,从该目录起,一次删除多级空目录

文件操作命令

  1. cat
    cat命令用于读取文件的全部内容;或者将几个文件合并为一个文件。 语法:cat [OPTION] [FILE] -A, --show-all 等价于 –vET。 -b, --number-nonblank 对非空输出行编号。 -E, --show-ends 在每行结束处显示 $。 -n, --number 对输出的所有行编号,由1开始对所有输出的行数编号。
  2. touch
    touch命令可用于创建空文件;也可用于修改文件的时间戳。 语法:touch [OPTION]… DIRECTORY… 参数: -a 改变档案的读取时间记录。 -m 改变档案的修改时间记录。 -c 假如目的档案不存在,不会建立新的档案。与 --no-create 的效果一样。 -f 不使用,是为了与其他 unix 系统的相容性而保留。 -r 使用参考档的时间记录,与 --file 的效果一样。 -d 设定时间与日期,可以使用各种不同的格式。 -t 设定档案的时间记录,格式与 date 指令相同。
  3. cp
    cp命令用于复制文件或者目录,可以一次复制单个文件,也可以一次复制多个文件(cp 命令属于高危命令,使用不慎就会有丢失数据的危险)。 语法:cp [OPTION]… SOURCE… DIRECTORY -a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。 -p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。 -r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。 -l:不复制文件,只是生成硬链接文件。 -s:把目标文件建立为源文件的软链接文件,而不是复制源文件。
    cp 命令既可以复制文件,也可以复制目录。我们先来看看如何复制文件。
  4. mv
    mv命令用于移动件或者目录(高危命令,使用不慎就会有丢失数据的危险)。 如果原文件和目标文件在同一个父目录里面,则mv命令的效果就相当于给文件改名。 语法:mv [选项] 源文件或目录 目标文件或目录。 -b :若需覆盖文件,则覆盖前先行备份。 -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖。 -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖。 -u :若目标文件已经存在,且 source 比较新,才会更新(update)。
  5. rm
    rm命令用于删除文件或者目录。 rm命令属于高危命令,没有一个工具能够100% 恢复rm命令删除的文件,rm命令删除文件时并不是把文件放到类似图形界面的“回收站”里,所以没有“撤销删除”操作可用。 语法:rm [OPTION] file_or_dir -f, --force 忽略不存在的文件,从不给出提示。 -i, --interactive 进行交互式删除。 -r, -R, --recursive 指示rm将参数中列出的全部目录和子目录均递归地删除。 -v, --verbose 详细显示进行的步骤。
  6. head
    head用来显示文件的开头内容,默认head命令打印其相应文件的开头10行。 语法:head [OPTION] [FILE] 命令参数: -q 隐藏文件名 -v 显示文件名 -c<字节> 显示字节数 -n,显示的行数
  7. tail
    tail命令用于读取文件的尾部。 语法:tail [OPTION]… [FILE]… 主要参数: -f 循环读取。 -q 不显示处理信息。 -v 显示详细的处理信息。 -c<数目> 显示的字节数。 -n<行数> 显示行数。
  8. more
    more会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,而且还有搜寻字串的功能。more命令从前向后读取文件,因此在启动时就加载整个文件。 语法:more [OPTION]… [FILE]… +n 从笫n行开始显示。 -n 定义屏幕大小为n行。 +/pattern 在文件显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示。 -c 从顶部清屏,然后显示。
  9. less
    less命令读取内容,分屏显示,less与more类似,但使用less可以随意浏览文件,而more仅能向前移动,却不能向后移动,而且less在查看之前不会加载整个文件。 语法:less [OPTION]… [FILE]… 常用操作: /字符串:向下搜索“字符串”的功能。 ?字符串:向上搜索“字符串”的功能。 q 退出less 命令。 [pageup] 往前翻看文件。 [pagedown] 往后翻看文件。 空格键 滚动一页。 回车键 滚动一行。
  10. find

find命令用来在指定目录下查找文件。 可以指定一些匹配条件,如按文件名、文件类型、用户甚至是时间戳查找文件。 常用语法:find [path…] [expression] -name 按照文件名查找文件。 -perm 按照文件权限来查找文件 。 -user 按照文件属主来查找文件 。 -mtime -n +n 按照文件的更改时间来查找文件。

  1. which
    which命令在PATH所指定的目录中查找可执行文件。 使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。 语法:which [options] programname […]

vim操作

文本编辑器是操作系统基础的功能软件之一。根据使用环境的不同,Linux的文本编辑器有很多类型。 常见的Linux文本编辑器有:emacs、nano、gedit、kedit、vi、vim。

vi是标准的Unix文本编辑器,也是最古老的文本编辑器、最通用的文本编辑器。所有的Linux、Unix都默认带有vi文本编辑器。虽然vi的操作方式与其他常用的文本编辑器(如gedit)很不相同 ,但是由于其运行于字符界面,并可用于所有unix/linux环境,仍被经常使用。 vi的三种命令模式:

  • Command:命令模式,用于输入命令;
  • Insert:插入模式,用于插入文本;
  • Visual:可视模式,用于浏览文本。
  • 优点:通用,几乎所有的Unix、Linux都自带vi。 缺点:功能简单,显示效果单一。

Vim是从vi发展出来的一个文本编辑器。其代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。和Emacs并列成为类Unix系统用户最喜欢的编辑器。 从vi派生出来的Vim具有多种模式:

  • 基本模式:普通模式、插入模式、可视模式、选择模式、命令行模式、Ex模式
  • 派生模式:操作符等待模式、插入普通模式、插入可视模式、插入选择模式、替换模式

安装vim:​​yum -y install vim​

vim [options] [file] 编辑指定文件

常见参数: -c :打开文件前线执行指定的命令 -R :以只读方式打开,但是可以强制保存 -M :以只读方式打开,不可以强制保存 -r :回复崩溃的会话 +num :从第num行开始

  1. 移动光标
    上下左右键或k、j、h、l键上下左右移动光标 0 移动到行首 g0 移到光标所在屏幕行行首 :n 移动到第n行。 gg: 到文件头部。 G: 到文件尾部。
  2. 数据复制
    yy or Y: 复制整行文本。 y[n]w: 复制一(n)个词。
  3. 数据粘贴
    面向行的数据: p 放置数据在当前行的下面 P 放置数据在当前行的上面 面向字符的数据: p 放置数据在光标的后面 P 放置数据在光标前
  4. 数据删除 d[n]w: 删除(剪切)1(n)个单词 [n] dd: 删除(剪切)1(n)行。
  5. 显示与取消行号。 显示行号 :set nu
    取消显示行号 :set nonu
  6. 查找 :/word 在光标之后查找一个字符串word,按n向后继续搜索,shift+n向上搜索。 :?word 在光标之前查找一个字符串word,按n向后继续搜索。
  7. 替换 :1,5s/oldword/newword/g 将文档中1-5行的oldword替换为newword,不加g则只替换每行的第一个oldword。 :%s/ oldword/newword /g 将文档所有的oldword替换为newword,不区分大小写。
  8. 设置搜索高亮 临时设置时,在命令模式下输入: :set hlsearch
  9. 保存文件
    :w 保存 :q 退出 :wq 保存并退出 :q! 强制退出 :wq! 强制保存并退出
发表评论

相关文章