linux基本命令及使用方法

shell环境:

  shell:命令解释器,是Linux 系统的用户界面,提供了用户与内核进行交互操作的一种接口,它接收用户输入的命令并把它送入内核去执行。

  bash:是GNU 计划中重要的工具软件之一,目前也是 Linux 标准的shell  ,与sh兼容

    echo $PATH  显示当前使用的shell

    cat /etc/shells  显示系统使用的所以shell

  PATH:决定了shell将到哪些目录中寻找命令或程序,PATH的值是一系列目录,当您运行一个程序时,Linux在这些目录下进行搜寻编译链接。

     echo $PATH  查看PATH环境变量的值

linux命令的分类:

内部命令:属于shell解释器的一部分

外部命令:独立于shell解释器之外的程序

命令的通用格式:

命令字 [选项] [参数]

长选项:例如“ls -a”

短选项:例如“ls --help”

多个短选项可合并使用,例如“ls -alh”

长选项不能合并,只能分开

参数:命令的对象,如文件、目录名等

查看命令的类型:

type命令:type [选项] [参数]

-p 如果给出的指令为外部指令,则显示其绝对路径。

-a 在环境变量“PATH”指定的路径中,显示给定指令的信息,包括命令别名。

-t 输出“file”、“alias”或者“builtin”,分别表示给定的命令为“外部指令”、“命令别名”或者“内部指令”。

                   [[email protected] ~]# type cd

                    cd is a shell builtin                    #cd 是一个shell内部命令

                   [[email protected] ~]# type ifconfig

                    ifconfig is /sbin/ifconfig         #ifconfig是一个外部命令

查看命令的位置:

which命令:which 可执行文件名

-n 指定文件名长度指定的长度必须大于或等于所有文件中最长的文件名

-p 与-n参数相同但此处的包括了文件的路径

-a 将PATH目录中可以找到指令均列出不止第一个而已

-w 指定输出时栏位的宽度

-V 显示版本信息

[[email protected] ~]# which ls
alias ls=‘ls --color=auto‘
/usr/bin/ls
[[email protected] ~]# which ip
/usr/sbin/ip
[[email protected] ~]#

whereis命令:whereis [选项] 文件名

-b 定位可执行文件。

-m 定位帮助文件。

-s 定位源代码文件。

-u 搜索默认路径下除可执行文件、源代码文件、帮助文件以外的其它文件。

-B 指定搜索可执行文件的路径。

-M 指定搜索帮助文件的路径。

-S 指定搜索源代码文件的路径。

[[email protected] ~]# whereis cd
cd: /usr/bin/cd /usr/share/man/man1/cd.1.gz
[[email protected] ~]# whereis -b cd
cd: /usr/bin/cd

命令别名:

#alias NAME=‘VALUE‘

仅对当前用户:~/.bashrc

对所有用户有效:/etc/bashrc

撤销别名:unalias

[[email protected] ~]# alias
alias cp=‘cp -i‘
alias egrep=‘egrep --color=auto‘
alias fgrep=‘fgrep --color=auto‘
alias grep=‘grep --color=auto‘
alias l.=‘ls -d .* --color=auto‘
alias ll=‘ls -l --color=auto‘
alias ls=‘ls --color=auto‘
alias mv=‘mv -i‘
alias netconf=‘vim /etc/sysconfig/network-scripts/ifcfg-eno16777728‘
alias rm=‘rm -i‘
alias which=‘alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde‘

命令的补全:

用户给定的字符串只有一条惟一对应的命令,直接补全,否则再次Tab会给出列表

路径补全:Tab如果唯一则直接补全,否则再次Tab给出列表

命令的历史:

历史文件:~/.bash_history

history命令:显示曾经执行过的命令

-c:  清空命令历史

-d:  删除历史中指定的命令

#:  显示最近的# 条历史

-a:  追加本次会话新执行的命令历史列表至历史文件

-n:  读历史文件中未读过的行到历史列表

-r:  读历史文件附加到历史列表

-w:  保存历史列表到指定的历史文件

-p:  展开历史参数成多个行,但不存在历史列表中

-s:  展开历史参数成一行,附加在历史列表后

命令历史相关变量:

? HISTSIZE :命令历史记录的条数;

? HISTFILE :指定历史文件,默认为~/.bash_history;

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

? HISTTIMEFORMAT=“%F %T“ 显示时间

? HISTIGNORE=“str1:str2:… “  忽略string1,string2

命令行历史快捷键

上下键:可浏览之前使用过的命令

ctrl+p:重复前一个命令

!字符串: 重复前一个以“字符串”开头的命令

!num: 按照history 命令输出中的序号重复对应命令

!?:字符串: 重复前一个包含abc的命令

!-n : 重复n

strl -r:从命令历史中搜索命令

esc . :调用上一个命令中最后一个参数

!$:调用上一个命令中最后一个参数

!^:调用上一个命令中的第一个参数

!*:调用上一个命令中的全部参数

!n:调用上一个命令中的第n个参数

命令的帮助:

help命令:

用法1:help 内部命令字

用法2:命令字 --help          #使用于大多数外部命令

man命令:提供命令帮助的文件

    手册页存放在/usr/share/man

man 命令的配置文件:/etc/man.config | man_db.conf

man命令操作方法:使用less命令实现

Space:  向文件尾翻屏

b, ^B:  向文件首部翻屏

d, ^D:  向文件尾部翻半屏

u, ^U:  向文件首部翻半屏

RETURN:  向文件尾部翻一行

y :向文件首部翻一行

q:  退出

# :跳转至第#行 行

1G: 回到文件首部

G:直接到文件尾部

/KEYWORD:字符串搜索 n下一个匹配到的字符串 N上一个

    man章节:

1 使用者在shell中可以操作的指令或可执行档

2 系統核心可呼叫的函数与工具等

3 一些常用的函数(function)与函数库(library),大部分是C的函数库(libc)

4 装置档案的说明,通常在/dev下的档案

5 设定档或者是某些档案的格式

6 游戏(games)

7 惯例与协定等,例如Linux档案系统、网络协定、ASCII code等等的說明

8 系統管理員可用的管理指令

9 跟kernel有关的文件

  SYNOPSIS 摘要 :

[] :可选内容

<>:  必选内容

a|b :二选一

...:  同一内容可出现多次

红帽知识库和官方在线文档:

http://kbase.redhat.com

http://www.redhat.com/docs

http://access.redhat.com

Linux 的两种时钟:

系统 时钟:由Linux 内核通过CPU 的工作频率进行的;

硬件 时钟:主板

hwclock ,clock:  显示硬件时钟

-s, --hctosys  以硬件时钟为准,校正系统时钟

-w, --systohc  以系统时钟为准,校正硬件时钟

时间管理:

date命令:按格式显示或设置时间

data [选项]... [格式]

date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]

-d, –date=STRING 显示STRING指定的时间

-f, –file=DATEFILE 类似–date参数显示DATEFILE文件中的每行时间

-ITIMESPEC, –iso-8601[=TIMESPEC] 以ISO 8601 格式显示日期/时间。TIMESPEC为”date”(只显示日期)、”hours”、”minutes”、”senconds”(显示时间精度)之一,默认为”date”。

-r, –reference=FILE 显示文件的最后修改时间

-R, –rfc-2822 以RFC-2822兼容日期格式显示时间

-s, –set=STRING 设置时间为STRING

-u, –utc, –universal 显示或设定为Coordinated Universal Time时间格式

格式:可以使用“+”开头的字符串指定其格式

%n : 下一行

%t : 跳格

%H : 小时(00-23)

%I : 小时(01-12)

%k : 小时(0-23)

%l : 小时(1-12)

%M : 分钟(00-59)

%p : 显示本地 AM 或 PM

%r : 直接显示时间 (12 小时制,格式为 hh:mm:ss [AP]M)

%s : 从 1970 年 1 月 1 日 00:00:00 UTC 到目前为止的秒数

%S : 秒(00-60)

%T : 直接显示时间 (24 小时制)

%X : 相当于 %H:%M:%S

%Z : 显示时区

%a : 星期几 (Sun-Sat)

%A : 星期几 (Sunday-Saturday)

%b : 月份 (Jan-Dec)

%B : 月份 (January-December)

%c : 直接显示日期与时间

%d : 日 (01-31)

%D : 直接显示日期 (mm/dd/yy)

%h : 同 %b

%j : 一年中的第几天 (001-366)

%m : 月份 (01-12)

%U : 一年中的第几周 (00-53) (以 Sunday 为一周的第一天的情形)

%w : 一周中的第几天 (0-6)

%W : 一年中的第几周 (00-53) (以 Monday 为一周的第一天的情形)

%x : 直接显示日期 (mm/dd/yy)

%y : 年份的最后两位数字 (00.99)

%Y : 完整年份 (0000-9999)

[[email protected] ~]# date "+现在时间是:%Y-%m-%d %H:%M:%S"
现在时间是:2017-05-01 21:59:23
[[email protected] ~]# date "+%Y-%m-%d %H:%M:%S" -d "-3 year"
2014-05-01 21:59:38    ## 显示三年前的时间
[[email protected] ~]# date "+%Y-%m-%d %H:%M:%S" -d "+10 day"
2017-05-11 22:00:15    ##显示十天后的时间
[[email protected] ~]#  date "+%s"
1493647224    ##显示十天后的时间

设置时间:

date -s "20161128 10:10:10"

[[email protected] ~]# cal    ##显示日历
      May 2017
Su Mo Tu We Th Fr Sa
    1  2  3  4  5  6
 7  8  9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31

echo 命令:显示文字

  语法:echo [-neE][ 字符串]

  说明:echo 会将输入的字符串送往标准输出。echo  需要使用-e  参数来打印转义字符.

   -n  不要在最后自动换行

   -e  若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出:

\a  发出警告声;

\b  退格键

\c  最后不加上换行符号;

\n  换行且光标移至行首;

\r  光标移至行首,但不换行;

\t  插入tab;

\\  插入\ 字符;

\0nnn  插入nnn (八进制)所代表的ASCII 字符

\xHH 插入HH (十六进制)所代表的ASCII 字符

括号扩展:{ }

打印重复字符串的简化形式

[[email protected] ~]# echo file{1,3,5}
file1 file3 file5

‘‘单引号:强引用,单引号里的内容原样不变,防止任何变量替换

""双引号:弱引用,可防止通配符扩展,但允许变量替换

``反引号:命令引用,反引号里的指令会替换为执行结果

[[email protected] ~]# echo ‘$PATH‘
$PATH
[[email protected] ~]# echo "$PATH"
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
[[email protected] ~]# echo `pwd`
/root

重定向和管道:

标准输入输出:

标准输入:stdin-0 默认接受来自键盘的输入

标准输出:stdout-1 默认输出到终端窗口

标准错误:stderr-2 默认输出到终端窗口

程序:指令+数据

读取数据:Input

输出数据:Output

I/O重定向:改变默认位置

重定向操作符:标准输出和标准错误可以重定向到文件

>       把标准输出重定向到文件

2>     把标准错误重定向到文件

&>    把所以输出重定向到文件

注:>文件内容会被覆盖,禁止内容覆盖已有文件:set -c ,强制覆盖:>|

>>     原有内容基础上,追加内容

2>     覆盖重定向错误数据流

2>>  追加从定向错误数据流

&>    标准输出和错误输出合并覆盖重定向

&>> 标准输出和错误输出合并追加重定向

<       标准输入重定向

<<终止词                   把多行发送给stdin

[[email protected] ~]# uname -p > kernel.txt
[[email protected] ~]# cat kernel.txt
x86_64
[[email protected] ~]# uname -r >> kernel.txt
[[email protected] ~]# cat kernel.txt
x86_64
3.10.0-327.el7.x86_64

管道操作:

  管道操作为不同命令提供了协同工作的一种机制,位于管道符号左侧的命令输出的结果,将作为右侧命令的输入(处理对象),同一行命令中可以使用多个管道。   命令1 |命令2 |命令3

[[email protected] ~]# df -Th |grep "/$"
/dev/mapper/centos-root xfs        32G  1.3G   31G   4% /
[[email protected] ~]# df -Th |grep "/$" |awk ‘{print $6}‘
4%
时间: 2024-10-13 22:21:34

linux基本命令及使用方法的相关文章

Linux 基本命令运行

Linux 基本命令运行 开启Linux操作系统,要求以root用户 登录GNOME图形界面,语言支持选择 为汉语 使用快捷键切换到虚拟终端2,使用普通 用户身份登录,查看系统提示符 使用命令退出虚拟终端2上登录的用户 使用快捷键切换到虚拟终端5,使用管理员身份登录,查看系统提示符 使用命令退出虚拟终端5上登录的用户 切回图形界面,右单击桌面打开终端,输入关闭系统的命令 查看哪些用户在系统上工作 修改当前时间为2018年8月26号11:28 查看2015年10月份日历 使用两种方法查看ls命令的

转:Linux基本命令大全

Linux基本命令大全 新手刚刚接触Linux的时候可能处处感到不便,不过没有关系,接触新的事物都有这样的一个过程,在你用过Linux一段时间后,你就会逐渐了解Linux其实和Windows一样容易掌握. 由于操作和使用环境的陌生,如果要完全熟悉Linux的应用我们首先要解决的问题就是对Linux常用命令的熟练掌握.本章我们就来介绍Linux的常用基本命令. 首先启动Linux.启动完毕后需要进行用户的登录,选择登陆的用户不同自然权限也不一样,其中“系统管理员”拥有最高权限. 在启动Linux后

linux基本命令操作(二)

·        du命令使用: [[email protected]]# du       //后没有选项和参数,默认评估当前目录下的所有目录的大小,当然也包括当前目录的大小// 237     ./grub 12      ./lost+found 6555    . [[email protected]]# ls config-2.6.18-348.el5  initrd-2.6.18-348.el5.img  System.map-2.6.18-348.el5 file1.txt]   

Linux基本命令(2)

1.如果在任何命令的后面加上一个>和文件名(不一定事先存在),那么这个命令的执行结果就被送至该文件中.如: $ls /usr/bin > ~/unknown 如果该文件已经存在,则ls命令的输出结果将会覆盖原来的文件内容.如果用csh和tcsh型的shell,可用下列方法避免覆盖, $set noclobber 在bash下,可用下列命令避免覆盖, $noclobber=1    (不一定是1,其他数值也可以) 2.可以用>>将命令的结果附加到文件的末尾,如 $ls /usr/bi

Linux基本命令小结

Linux基本命令小结 Linux里有很多命令是必须掌握的,接下来我来分享一部分实用的命令详解,希望对大家有所帮助. *顺便给大家推荐一本经典著作<鸟哥的私房菜>* **cd 命令** 1. 用来切换工作目录至目标目录 2. 语法 cd (选项) (参数) 选项: -p 如果要切换到的目标目录是一个符号连接,就会直接切换到这个符号连接指向的目标目录 -L 如果要切换的目标目录是一个符号的连接,直接切换到字符连接名代表的目录,而非符号连接所指向的目标目录 3. 实例 cd 进入用户主目录,执行后

Linux基本命令Linux基本命令

一?Linux系统设置与基本操作(一)图形界面与命令行界面(1)图形界面:能够借助鼠标完成系统设置和程序使用等相关操作.(2)命令行界面:字符界面,没有图形程序,鼠标操作被弱化,通过命令行方式提供各项管理操作.(3)图形环境中的伪终端:需要运行在图形化界面中,并不是真正的纯字符终端,可以通过命令行方式执行各种管理操作.二Linux基本命令:(一) 命令格式:命令选项参数(1) 命令字:命令的名称.(2) 选项:调节命令的具体功能,决定命令如何执行.(3) 参数:命令字的处理对象,通常情况下可以使

Linux03 /Linux基本命令

Linux03 /Linux基本命令 1.Linux命令行的组成结构 2.Linux系统命令操作语法格式 命令 空格 参数 空格 [文件或路径]需要处理的内容 rm -rf /tmp/* ls -la /home 1.一般情况下,[参数]是可选的,一些情况下[文件或路径]也是可选的 2.参数 > 同一个命令,跟上不同的参数执行不同的功能 3.执行linux命令,添加参数的目的是让命令更加贴切实际工作的需要 4.linux命令,参数之间,普遍应该用一个或多个空格分割 3.创建一个目录 /boy w

Linux 新手必知必会的 10 条 Linux 基本命令

Linux 对我们的生活产生了巨大的冲击.至少你的安卓手机使用的就是 Linux 核心.尽管如此,在第一次开始使用 Linux 时你还是会感到难以下手.因为在 Linux 中,通常需要使用终端命令来取代 Windows 系统中的点击启动图标操作.但是不必担心,这里我们会介绍 10 个 Linux 基本命令来帮助你开启 Linux 神秘之旅. 帮助新手走出第一步的 10 个 Linux 基本命令 当我们谈论 Linux 命令时,实质上是在谈论 Linux 系统本身.这短短的 10 个 Linux

linux基本命令整理(三):进程和vim

linux基本命令整理(三) -----------进程和vim 一.进程 1.查看进程 ps:将某个时间点的程序运行的状况截取下来 a:所有的进程 x:后台进程 u:有效的使用者相关的进程(常用组合aux) -IA:也能观察系统所有的数据 axjf:连同部分的程序树状态 -I:今查看和自己bash相关的程序 top:动态的观察进程的变化 -d:后面接描述,就是整个页面刷新的时间:默认是5秒 -b:以批次的方式执行top -n:与-b搭配使用,意义是需要进行几次top的输出结果 如:top -b