linux基础知识

*linux终端类型:

    查看当前终端的命令:tty

  •  物理终端:直接接入本机放入显示器,键盘设备。路径:/dev/console

  •  虚拟终端:附加在物理终端上以软件方式虚拟实现的终端,可以使用ctrl+alt+F[1,6]快捷键来切换虚拟终端。路径:/dev/tty[1,6]

  •  模拟终端:图形界面下打开的命令行接口,或基于ssh协议或telnet协议远程打开的界面。路径:/dev/pts/[0,oo]

 

 

*路径的表示:

  • 绝对路径:以"/"符号开头,表示根路径下的文件。/即表示根路径。如,cd /config。表示进入根路径下的config文件夹内。

  • 相对路径:直接写文件名,或文件路径,表示当前路径下的文件。也可以以"./"开头,也表示当前路径。如,cd config或cd ./config。表示进入当前路径下的config文件夹内。

*linux内文件类型:

  • f:普通文件

  • d:目录文件

  • l:符号链接文件

  • s:套接字文件

  • b:块设备文件

  • c:字符设备文件

  • p :管道文件

*shell程序及命令:

  • shell

    • 查看当前所用shell的类型:echo $SHELL

    • 查看当前系统支持的所有shell类型:cat /etc/shells

  • 命令:在shell中可执行的命令分为两种,可以通过type命令来查看命令类型:type [命令名称]

    • 内建命令:由shell自带的,如,cd

    • 外部命令:在当前系统的某文件系统路径下有对应的可执行程序文件,即系统自带的命令

      • 查看外部命令的可执行程序文件的路径:如,which [命令名称];或whereis [命令名称]。

      • 外部命令的执行即shell去指定路径寻找命令所对应的可执行程序文件,这些路径定义在PATH环境变量中。可以利用 echo  $PATH 查看。各个路径之间以“:”分隔。

  • 命令的帮助获取:

    • 内建命令:help [命令名称]。help本身也是一个内建命令

    • 外部命令:

      • [命令名称] --help/[命令名称] -h

      • man [命令名称]

      • info [命令名称]

 

 

*bash shell的特性

  • 利用{}命令行展开:{},可承载一个以逗号分隔的列表,并将其展开为多个路径

    • 例,创建/test/x1/y1,/test/x1/y2,/test/x2/y1,/test/x2/y2 多个路径。

      • 可以使用 mkdir /test/{x1,x2}/{y1,y2}直接创建。

    • {}内还可以进行嵌套。如,创建/test/x1/y1,/test/x1/y2,/test/x1/y1/z1,/test/x1/y1/z2

      • 则 mkdir /test/x1/{y1/{z1,z2},y2}

*bash的配置文件:

  • 以生效范围划分:

    • 全局配置文件:

      • /etc/profile

      • /etc/profile.d/*.sh

      • /etc/bashrc

    • 个人配置:

      • ~/.bash_profile

      • ~/.bashrc

  • 按功能划分:

    • profile类:为交互式shell提供配置

      • 定义环境变量

      • 运行命令或脚本

    • bashrc类:为非交互式的shell提供配置

      • 定义别名

      • 定义本地变量

 

 

*linux中的通配符glob

  • *     :匹配任意数量的任意字符

  • ?   :匹配单个任意字符

  • []    :匹配指定范围的单个字符。如,[0-9],[a-z](匹配所有字母,不区分大小写),[A-Z](匹配大写字母)

  • [^] :匹配指定范围之外的任意单个字符。如[^0-9]。

  • 专用字符集合:注意:使用时还要再加一个[],如,ls a[[:digit:]]b

    • [:digit:]:任意数字,相当于[0-9]。

    • [:lower:]:任意小写字母

    • [:upper:]:任意大写字母

    • [:alpha:]:任意大小写字母

    • [:alnum:]:任意数字或字母

    • [:space:]:空格字符

    • [:punct:]:标点符号

 

 

*I/O重定向

  • 输出重定向:

    • 覆盖重定向:>。 格式:命令 > 文件。表示将该命令的输出重定向到指定文件中。

    • 追加重定向:>>。格式:同上。

      • 如果使用>或>>符号重定向,其实只会重定向标准输出流,如果命令执行中发生了错误,错误信息并不会被重定向。

    • 错误输出流重定向:2>或2>>。这种方法只会重定向错误输出流。

      • 可以将不同的信息输出到不同的文件。例,cat aaa > /test/out 2> /test/err

    • 合并不同输出流:利用&即将不同的信息输出到一块。例,cat aaa &> /test/out。或,cat aaa > /test/out 2> &1。

  • 输入重定向:<。利用它可以让一些不能从文件中读数据的指令,从文件中读数据。在此以tr命令为例。

    • tr:替换或删除字符。它默认是从标准输入流(即键盘)读取数据。

      • 格式:tr [OPTION]... SET1 [SET2]

      • 替换字符:tr abc ABC,将输入的字符中所有的abc换成ABC

      • 删除字符:tr -d abc ,删除输入字符中所有的abc字母。

    • 将tr的输入流重定向为一个文件:tr abc ABC <  /etc/fstab。意思是将/etc/fstab内的所有abc字母换成ABC并输出。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值