终端

用于与主机交互,必然用到的设备。

物理终端

直接接入本机的显示器和键盘设备:Console。

虚拟终端

附加在物理终端之上的以软件方式虚拟实现的终端,CentOS 6 默认启动 6 个虚拟终端。

通过快捷键 Ctrl+Alt+F[-] 可以切换终端。
图形终端:附加在物理终端之上的以软件方式虚拟实现的终端,但会额外提供桌面环境。
通过命令 tty 可以查看当前所在终端的设备文件路径。

模拟终端

图形界面下打开的命令行窗口,基于 ssh 协议或 telnet 协议等远程打开的界面。

shell类型

查看当前使用的shell类型

root@ubuntu:~# echo $SHELL
/bin/bash

查看可使用的shell类型

root@ubuntu:~# cat /etc/shells
# /etc/shells: valid login shells
/bin/sh
/bin/dash
/bin/bash
/bin/rbash

命令

输入命令,回车:提请 shell 程序找到键入命令所对应的可执行程序或代码,并由其分析后提交给内核分配资源将其运行起来。

命令类型

内建命令:由 shell 自带且通过某命令形式提供。

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

查看命令对应可执行程序或代码

root@ubuntu:~# which ls
/bin/ls
root@ubuntu:~# whereis ls
.gz

查看命令类型

root@ubuntu:~# type cd
cd is a shell builtin
root@ubuntu:~# type ls
ls is aliased to `ls --color=auto'
root@ubuntu:~# type cat
cat is hashed (/bin/cat)

命令格式

COMMAND [OPTIONS...] [ARGUMENTS...]

OPTIONS(选项):用于启用或关闭命令的某个或某些功能。

短选项:-c,例:-l -h,可写作 -lh。
长选项:--word,例: --long,--huan-readable。

ARGUMENTS(参数):命令的作用对象,向命令提供数据。

注意:
1、多选项,以及多参数和命令之间都应该使用空白字符分隔。
2、取消命令执行: Ctrl+C 。

文件系统

文件名

1、文件名严格区分大小写:file1,File1,FILE1 是不同的文件;

2、文件名可使用除“/”以外的任意字符,不建议使用特殊字符;

3、文件名长度最长不可超过255个字符;

4、所有以“.”开头的文件均为隐藏文件;

路径

绝对路径:从根目录起始的路径。

相对路径:从当前目录起始的路径。

当前目录:current directory,也称作 working directory。
可通过 pwd 命令(pwd:printing working directory)查看当前所在路径。

Linux命令帮助的获取

内建命令

help COMMAND

外部命令

1、 COMMAND --help 或 COMMAND -h 。

2、使用手册: man COMMAND 。

手册页存放地址: /usr/share/man 。
man1...man8:
man1:用户命令。
man2:系统调用。
man3:C库调用。
man4:设备文件及特殊文件。
man5:配置文件格式。
man6:游戏。
man7:杂项。
man8:管理类命令

有些关键字在不只一个章节中存在帮助手册,查看指定章节的手册: man # COMMAND 。

man 命令的配置文件: /etc/man.config ,可以通过指定 MANPATH /PATH/TO/SOMEWHERE :指明新的手册文件搜索位置。

不修改配置文件指定手册文件搜索位置并显示之: man -M /PATH/TO/SOMEWHERE COMMAND 。

段落说明
NAME:命令名称。
SYNOPSIS:使用概要。
DESCRIPTION:描述。
OPTIONS:选项。
EXAMPLES:示例。
AUTHOR:作者。
REPORTING BUGS:错误反馈联系人。
SEE ALSO:另见。
SYNOPSIS
[]:可选内容。
<>:必选内容。
a|b:二选一。
...:同一内容可出现多次。
操作方法
Space,^V,^F:向文件尾部翻屏。
b,^B:向文件首部翻屏。
d,^D:向文件尾部翻半屏。
u,^U:向文件首部翻半屏。
Return,^N,e,^E,j,^J:向文件尾部翻一行。
y,^Y,^P,k,^K:向文件首部翻一行。
q:退出。
#:跳转到第 # 行。
1G:回到文件首部。
G:跳至文件尾部。
/KEYWORD:以 KEYWORD 指定的字符串为关键字,从当前位置向文件尾部搜索,不区分大小写。n:下一个,N:上一个。
?KEYWORD:以 KEYWORD 指定的字符串为关键字,从当前位置向文件首部搜索,不区分大小写。n:下一个,N:上一个。

3、信息页: info COMMAND 。

4、程序自身的帮助文档: /usr/share/doc/COMMAND_VERSION 。

5、程序官方文档。

命令总结

hash

shell 程序搜寻可执行程序文件的路径定义在 PATH 环境变量中: echo $PATH 。

而 shell 搜寻到的外部命令的路径结果会缓存至 kv(key-value)存储中,可通过 hash 命令查看。

history

管理命令历史
登陆 shell 时,会读取命令历史文件中记录下的命令: ~/.bash_history 。
登陆进 shell 后,新执行的命令只会记录在缓存中,这些命令会在用户退出时追加保存到命令历史文件中。
history
-a:手动追加本次会话新执行的命令历史列表至历史文件中。
-d #:删除历史中指定的第 # 条命令。
-c:清空命令历史。
#:查看最近 # 条历史。
快捷操作
!#:调用历史中第 # 条命令。
!string:调用历史中最近一个以 string 开头的命令。
!!:上一条命令。
!$:调用上一条命令的最后一个参数。
ESC,.:取上一条命令的最后一个参数。
相关环境变量

HISTSIZE:命令历史记录的条数。

HISTFILE:~/.bash_history

HISTFILESIZE:命令历史文件记录历史的条数。

date

格式化输出日期:

[root@bogon ~]# date +'%Y年%m月%d日 %H:%M:%S'
2019年01月03日 ::

设置时间:

[root@bogon ~]# date 0815170115.21
2015年 08月 15日 星期六 :: CST
查看月历:
cal:查看当前月历。
cal 2019:查看 2019 年所有月历。

[root@bogon ~]# cal
      八月
日 一 二 三 四 五 六

[root@bogon ~]# cal 

        一月                   二月                   三月
日 一 二 三 四 五 六   日 一 二 三 四 五 六   日 一 二 三 四 五 六

        四月                   五月                   六月
日 一 二 三 四 五 六   日 一 二 三 四 五 六   日 一 二 三 四 五 六

        七月                   八月                   九月
日 一 二 三 四 五 六   日 一 二 三 四 五 六   日 一 二 三 四 五 六

        十月                  十一月                 十二月
日 一 二 三 四 五 六   日 一 二 三 四 五 六   日 一 二 三 四 五 六

例:

Linux的两种时钟:
系统时钟(date):由 Linux 内核通过 CPU 的工作频率进行的计时。
硬件时钟(clock/hwclock):如其名。

[root@bogon ~]# date
2015年 08月 15日 星期六 :: CST
[root@bogon ~]# clock
2019年01月03日 星期四 20时40分00秒  -0.178068 秒
clock -s,--hctosys   // 将硬件时钟同步到系统时钟
clock -w,--systohc  // 将系统时钟同步到硬件时钟
[root@bogon ~]# date
2015年 08月 15日 星期六 :: CST
[root@bogon ~]# clock -s
[root@bogon ~]# date
2019年 01月 03日 星期四 :: CST
[root@bogon ~]# clock
2019年01月03日 星期四 20时55分54秒  -0.521538 秒

例:

cd

cd 或 cd ~ :回到当前用户主目录。

cd ~USERNAME :切换至指定用户的主目录。

cd - :在上一个目录和当前目录之间切换。

相关环境变量:
PWD:保存了当前目录路径。
OLDPWD:保存了上一次所在目录路径。

[root@bogon ~]# echo $PWD
/root
[root@bogon ~]# echo $OLDPWD
/etc

例:

ls

显示指定路径下的文件列表。

ls -a :显示所有文件,包含隐藏文件,包括“ . ”和“ .. ”。

ls -A :显示所有文件,包含隐藏文件,不包括“ . ”和“ .. ”。

ls -l :长格式。

-rw-r--r--. root root 12月 .bashrc :

最左侧第一位:文件类型。

后面九位:访问权限。

数字:文件被硬链接的次数。

左root:文件的所有者(owner)。

右root:文件的所属组(group)。

176:文件大小(size)。

12月 29 2013:文件最后一次被修改的时间。

.bashrc:文件名。

文件类型
-:普通文件。
d:目录。
l:链接文件。
b:块设备。
c:字符设备。
p:管道文件。
s:套接字文件。

ls -h :单位换算。

通常和 -l 一起使用:

[root@bogon ~]# ls -lh
总用量 .0K
-rw-------.  root root .3K 1月    : anaconda-ks.cfg

ls -d :显示目录自身相关属性。

通常和 -l 一起使用:

[root@bogon /]# ls -ld /etc/
drwxr-xr-x.  root root  1月    : /etc/

ls -r :反序显示。

ls -R :递归显示文件夹及子文件夹所有文件。

stat

获取指定文件元数据,即查看文件详细状态信息。

[root@bogon ~]# stat .bashrc
  文件:".bashrc"
  大小:           块:          IO 块:   普通文件
设备:fd00h/64768d    Inode:   硬链接:
权限:(/-rw-r--r--)  Uid:(    /    root)   Gid:(    /    root)
环境:system_u:object_r:admin_home_t:s0
最近访问:-- ::
最近更改:-- ::
最近改动:-- ::
创建时间:-

cat&tac

cat:查看文件内容。

[root@bogon /]# cat /etc/issue
\S
Kernel \r on an \m

tac:反序查看文件内容。

[root@bogon /]# tac /etc/issue

Kernel \r on an \m
\S

file

查看文件类型。

[root@bogon /]# file /bin/cat
/bin/-bit LSB executable, x86-, version  (SYSV), dynamically linked (uses shared libs), , BuildID[sha1]=8ac8b57ae50762a4a0480486839107e87b3c284d, stripped
[root@bogon /]# file /etc/fstab
/etc/fstab: ASCII text
[root@bogon /]# file /etc/
/etc/: directory

echo

回显命令,将指定内容输出到控制台。

[root@bogon ~]# echo 'how are you'
how are you
[root@bogon ~]# echo '$SHELL'
$SHELL
[root@bogon ~]# echo "$SHELL"
/bin/bash

which

显示命令对应的程序文件路径。

[root@bogon ~]# which cat
/usr/bin/cat
[root@bogon ~]# which ls
alias ls='ls --color=auto'
    /usr/bin/ls
[root@bogon ~]# which --skip-alias ls
/usr/bin/ls

whereis

显示命令对应的二进制,源码文件和手册页的存放位置。

[root@bogon ~]# whereis ls
.gz

whatis

使用 mkwhatis 可将当前系统上所有的帮助手册及与之对应的关键字创建成一个数据库,并且此数据库中会保存该关键字的简要说明信息。

而 whatis 可以以我们制定的关键字在该数据库中查询该关键字相关信息。

[root@bogon ~]# whatis ls
)               - list directory contents
mkwhatis 会由 linux 系统在一定时间自动执行,不用我们手动执行。

linux基础(1)-终端&shell类型&命令&文件系统&命令帮助的获取的更多相关文章

  1. linux基础学习之软件安装以及常用命令

    linux基础学习之软件安装以及常用命令 调用中央仓库: yum install wget 然后下载nodejs: wget https://nodejs.org/dist/v10.14.2/node ...

  2. 【Linux基础总结】Shell 基础编程

    Shell 基础编程 重启虚拟机遇到磁盘损坏如何解决 Shell编程中变量的声明.引用及作用域 Shell程序 概述 以文件形式存放批量的Linux命令集合,该文件能够被Shell解释执行,这种文件就 ...

  3. Linux基础知识第四讲,文件内容命令

    目录 一丶常用命令 1.cat命令演示以及常用选项 2.grep 搜索命令的使用 3.echo 以及 重定向的使用 4.管道概念 一丶常用命令 序号 命令 对应英文 作用 01 cat 文件名 con ...

  4. Linux基础——硬盘分区、格式化及文件系统的管理

    1. 硬件设备与文件名的对应关系 掌握在Linux系统中,每个设备都被当初一个文件来对待. 设备 设备在Linux内的文件名 IDE硬盘 /dev/hd[a-d] SCSI硬盘 /dev/sd[a-p ...

  5. Linux基础之bash shell介绍及基本特性

    今天继续讲Linux基础知识,内容是关于bash shell的.分享以下bash shell的相关知识,例如基本特性等.  1.8)bash shell的介绍 1.8.1)什么是bash shell ...

  6. Linux基础:初识shell之系统命令基础

    一 shell介绍 shell Shell 中文意思贝壳,寓意类似内核的壳.Shell是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务,简而言之就是只要能够操作应用 ...

  7. linux 基础-变量,shell基本语法

    变量 定义变量 your_name="runoob.com" #变量名和等号之间不能有空格 使用变量 your_name="qinjx" echo $your_ ...

  8. 【linux】centos7终端中文显示乱码,命令返回中文乱码

    centos7终端中文显示乱码,命令返回中文乱码 1.查看服务器编码的命令 1.1 echo $LANG 1.2 locale 1.3 查看终端xshell编码 如果以上的三点依旧保持一致,而依旧乱码 ...

  9. Linux基础之终端、控制台、tty、pty简介说明

    最近在搞Linux提权的时候,有时候su 用户名 登录的时候发现登录不了,因为tty终端,交互不了,所以我也来总结一下 一. 基本概念 1. ttytty(终端设备的统称):tty一词源于telety ...

随机推荐

  1. apk反编译看包名什么的

    首先默认你是装了java环境的 到google code里面下载apktool1.5.2.tar.bz2和apktool-install-windows-r05-ibot.tar.bz2(地址:htt ...

  2. 关于bat中使用rar压缩命令

    数据库备份,导出的dmp 文件比较大,需要压缩,压缩后大小能变为原来十分之一左右吧. 写的是批处理的语句,每天调用,自动导出dmp 文件,压缩删除原文件. 首先写下路径 先将压缩软件的路径写入系统的环 ...

  3. WinPE启动U盘的制作方法与软件下载(通用PE工具箱/老毛桃/大白菜WinPE)

    转自:http://blog.sina.com.cn/s/blog_58c380370100cp5x.html 文件大小:39.5M(支持Win7安装,早期的通用PE工具箱,小巧不过几十兆,现在都臃肿 ...

  4. 【大数据系列】Hive安装及web模式管理

    一.什么是Hive Hive是建立在Hadoop基础常的数据仓库基础架构,,它提供了一系列的工具,可以用了进行数据提取转化加载(ETL),这是一种可以存储.查询和分析存储在Hadoop中的按规模数据的 ...

  5. 法律&道德

    西弗森是美国加州一名95岁的老妇人,2010年12月份的一天,她在家清理房间,当她翻开一叠纸的时候,一本书从里面掉了下来,她弯腰拾起来,发现是一本名叫<水上飞机独自飞>的书,再一看书页里的 ...

  6. jQuery队列(一)

    jQuery的队列依赖缓存机制事件,它同时是animate的基础. 它不像事件机制.缓存机制.回调机制一样有自己的命名空间,由于比较简单,所以直接挂在到$和jQuery对象上. 它提供的基础方法有: ...

  7. Android Studio 3.0.1 版本包下载

    Android Studio 3.0.1 发布了,这是对 Android Studio 3.0 的一个小的更新,包括一般错误修复和性能改进 下载地址: Windows 64 位:https://dl. ...

  8. SPClaimsUtility.AuthenticateFormsUser的证书验证问题

    Log Parser Studio查看IIS日志发现调用SPClaimsUtility.AuthenticateFormsUser的部分有time-taken在15秒左右的多个响应,查看call st ...

  9. 【CF884F】Anti-Palindromize 费用流

    [CF884F]Anti-Palindromize 题意:定义一个串是反回文的,当且仅当对于1<=i<=len,$a_i!=a_{len-i+1}$. 现在给出一个长度为n的串S(n是偶数 ...

  10. sprint boot 配置

    来源:https://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#howto-configure-to ...