一、shell概述

1.Linux系统中运行的一种特殊程序

2.在用户和内核之间充当“翻译官”

3.用户登录Linux系统时,自动加载一个shell程序

4.bash是Linux系统中默认使用的shell程序(文件位于/bin/bash)

二、linux命令分类

1.内部命令

1)集成于Shell解释器程序内部的一些特殊指令,也称为内建(Built-in)指令

2)属于Shell的一部分

3)没有单独对应的系统文件

4)自动载入内存,可以直接使用

2.外部命令

1)Linux系统中能够完成特定功能的脚本文件或二进制程序

2)属于Shell解释器程序以外的命令

3)每个外部命令对应了系统中的一个文件

4)必须知道其对应的文件位置,由Shell加载后才能执行

三、linux命令行

3.1 格式

命令字 【选项】 【参数】------英文字符区分大小写

1.命令字

是整条命令中最关键的一部分

唯一确定一条命令

2.选项

短格式选项:使用“-”符号引导------多个单字符选项可以组合在一起使用 例如:-a -b -c

长格式选项:使用“–”符号引导 例如:--help

3.参数

命令字的处理对象

可以是文件名、,目录(路径)名或用户名等内容

个数可以是零到多个

3.2 编辑Linux命令行

编辑Linux命令行的辅助操作

Tab键(两下):自动补齐(提示)

反斜杠\:强制换行(其实没换行,只是显示的换行)

Ctrl+U组合键:清空至行首(不包含/)

Ctrl+K组合键:清空至行尾 (包含/)

Ctrl+L组合键:清屏 (配置还在)

Ctrl+C:取消本次命令编辑

Ctrl+a:切换到行首

Ctrl+e:切换到行尾

3.3 获得命令帮助的方法

1.内部命令 help

查看shell内部命令的帮助信息

2.命令的“–help”选项

适用于大多数Linux外部命令

3.使用man命令阅读手册页

使用“↑”、“↓”方向键滚动一行文本

使用Page Up和Page Down键翻页

按Q或q键退出阅读环境

按“/”键查找内容

4.百度

注:1)查看内部命令:help;enable (内部命令集合);type+命令 (判断)

2)禁用内部命令:enable -n (cd) cd是/user/bin/cd

开启内部命令:enable (cd) cd是shell内嵌

3)哈希命令(缓存命令)

四、Linux基础命令

4.1 pwd:查看当前的工作目录

pwd命令用于显示用户当前所在的工作目录位置,工作目录是用户操作文件或其他子目录的默认位置起点。使用pwd命令可以不添加任何选项或者参数。

示例:[root@localhost ~]# pwd

当前工作目录:/root

4.2 cd:切换工作目录

4.2.1 cd格式

1.cd目标位置:切换到目标位置

2.cd ~:若不指定目标位置,切换到当前用户的家目录

3.cd:同cd ~

4.cd -:切换到上一次执行cd命令之前所在的目录

4.2.2 绝对路径

以根号“/”为起点的路径称为绝对路径

以根号“/”为起点的目录称为根目录

4.2.3 相对路径

4.3 列表显示目录内容:ls

显示目录中的内容,包括子目录和文件相关属性信息

ls [选项] [文件或目录....]

常用选项:

-l,-a,-A,-d,-h,-R,--color

结合通配符:

‘?’:代表任意一个字符,有且有一个字符

‘*’:代表任意数个字符,可以是0个或者1个或者多个

‘[]’:表示可以匹配字符组中得任意一个字符

4.4 设置别名:alias

通过别名机制简化常用的、比较长的命令

alias 命令别名=‘命令’ (‘=’两边不能有空格)

示例:

设置myls为ls -alh的别名

alias myls=‘ls -alh’

取消别名:

unalias 命令别名

4.5 统计目录及文件空间占用情况:du

统计指定目录(或文件)所占用磁盘空间的大小

du [选项] [文件或者目录...]

常用选项

-a 统计磁盘空间占用时包括所有的文件,而不是仅仅只统计目录

-h 以更人性化的方式(默认以kB计数,但不显示单位)显示出统计结果

-s 只统计所占空间总的大小,而不是统计每个子目录、文件的大小

–max-depth=n 统计所有小于等于第n层的目录的总大小

统计出 /var/log 目录中子目录的大小:

du -h --max-depth=1 /var/log/

4.6 创建新目录:mkdir

创建新的空目录

mkdir [选项]目录位置及名称...

示例:

在当前目录下创建名为 pubic_html 的子目录:

mkdir pubic_html

在当前目录下创建目录/aa,在/aa目录下创建子目录bb,在/aa/bb目录下创建子目录cc:

mkdir -p /aa/bb/cc

4.7 创建空文件:touch

更新文件的标记时间

经常用于创建多个空的新文件

touch 文件...

示例

创建两个空文件,文件名分别为aa.txt和bb.txt

touch aa bb

touch {a,b}.txt

4.8 创建链接文件:ln

为文件或目录建立链接文件,类似于Windows系统的快捷方式

链接文件类型

软链接(又称为符号链接)

硬链接

ln [-s(软链接)]源文件或目录...链接文件或者目标位置

示例:

ln -s /bin/bzip2 /bin/wx/

在Linux中,文件名和文件的数据是分开的

在Linux中,只有文件的 硬链接数=0 才会被删除

使用 ls -l 可以查看一个文件的硬链接数

在日常工作中,几乎不会建立文件的硬链接。

软链接与硬链接的区别:

4.9 复制文件或目录:cp

将需要复制的文件或目录(源)重建一份,并保存为新的文件或目录

cp [选项]...源文件或目录...目标文件或目录...

常用选项:

-f、-i、-p、-r

4.10 删除文件或目录:rm

删除指定的文件或目录

rm [选项] 要删除的文件或者目录...

  • 常用选项
  • -f :删除文件或目录时不进行提醒,而直接强制删除
  • -i :删除文件或目录时提醒用户确认。(y表示删除,n表示不删除)
  • -r :删除目录时必须使用此选项,表示递归删除整个目录树(应谨慎使用)
  • 注:不要直接删除系统中已有的目录或配置文件,以避免出现意外故障

示例:

rm -rf public_html/grub/

rm -i public_html/apg.conf

cd /etc/yum.repos.d/

rm -rf ./*

4.11 移动文件或目录:mv

将指定的文件或目录转移位置

如果目标位置与源位置相同,则相当于执行重命名操作

mv [选项] ...源文件或目录... 目标文件或目录

示例:

mv mytouch mkfile

mv mkfile public_html/

4.12 查找命令文件存放目录:which

搜索范围由环境变量PATH决定(echo $PATH)

which+命令/程序名(默认当找到第一个目标后不再继续查找)

which±a+命令/程序名(在所有搜索路径中查找)

示例:

which ls

which history

使用which查找内部命令时,将找不到对应程序

4.13 查找文件或目录-find

采用递归方式,根据目标的名称、类型、大小等不同属性进行精细查找

find+【查找范围】+【查找条件表达式】

查找范围:查找文件或子目录的目录位置

查找条件表达式:查找条件类型

常用查找条件类型:

find之exec用法

-exec参数后面跟的是Linux命令,它是以分号“;”为结束标志,由于各个系统中分号会有不同的意义,因此在分号前面加上反斜杠转义符“\”

{}代表前面find查找出来的文件名

find命令匹配到了当前目录下的所有普通文件,并在-exec选项中使用ls -l命令将它们列出

find ./ -type f -exec ls -l {} \ ;

linux命令打基础的更多相关文章

  1. Linux实战教学笔记04:Linux命令基础

    第四节:Linux命令基础 标签(空格分隔):Linux实战教学笔记 第1章 认识操作环境 root:当前登陆的用户名 @分隔符 chensiqi:主机名 -:当前路径位置 用户的提示符 1.1 Li ...

  2. 像黑客一样使用 Linux 命令行

    前言 之前在博客园看到一篇介绍 IntelliJ IDEA 配置的文章,它里面用的是 gif 动态图片进行展示,我觉得很不错.所以在我今天以及以后的博文中,我也会尽量使用 gif 动图进行展示.制作 ...

  3. 11 个很少人知道但很有用的 Linux 命令

    Linux命令行吸引了大多数Linux爱好者.一个正常的Linux用户一般掌握大约50-60个命令来处理每日的任务.Linux命令和它们的转换对于Linux用户.Shell脚本程序员和管理员来说是最有 ...

  4. Linux命令随笔

    Linux命令总结 man ==命令帮助; help ==命令的帮助(bash的内置命令); ls ==list,查看目录列表; -ld:查看目录权限; -l:(long)长格式显示属性; -F:给不 ...

  5. linux命令在线手册

    下面几个网址有一些 Linux命令的在线手册,而且还是中文的,还可以搜索.非常方便 Linux命令手册 Linux命令大全 Linux中文man在线手册 每日一linux命令

  6. 常用的一些linux命令

    最近接触到一些linux环境部署的事情,下面分享一些最近使用的比较频繁的一些linux命令~ 1.一次性移动多个文件到一个文件夹里 mv  被移动文件名 -t 目标文件夹 如:mv a.txt b.t ...

  7. 测试或运维工作过程中最常用的几个linux命令?

     大家在测试工作过程中,可能会遇到需要你去服务器修改一些配置文件,譬如说某个字段的值是1 则关联老版本,是0则关联新版本,这时候你可能就需要会下vi的命令操作:或者查看session设置的时长,可能需 ...

  8. 每天一个 Linux 命令(21):find命令之xargs

    在使用 find命令的-exec选项处理匹配到的文件时, find命令将所有匹配到的文件一起传递给exec执行.但有些系统对能够传递给exec的命令长度有限制,这样在find命令运行几分钟之后,就会出 ...

  9. 在windows下使用linux命令,GnuWin32的使用.

    http://sourceforge.net/projects/getgnuwin32 使用过linxu的伙计估计都会喜欢上linux各种各样强大的命令如:grep, sed,awk,diff和pat ...

随机推荐

  1. VRRP协议与原理

    VRRP协议与原理 目录: 一.VRRP协议概述 1.1.VRRP协议 1.2.单网关和多网关的缺陷 1.3.VRRP基本概述 二.VRRP工作原理 2.1.VRRP主备份备份工作工程 2.2.VRR ...

  2. 高性能的Redis之对象底层实现原理详解

    对象 在前面的数个章节里, 我们陆续介绍了 Redis 用到的所有主要数据结构, 比如简单动态字符串(SDS).双端链表.字典.压缩列表.整数集合, 等等. Redis 并没有直接使用这些数据结构来实 ...

  3. Java并发之ReentrantReadWriteLock源码解析(二)

    先前,笔者和大家一起了解了ReentrantReadWriteLock的写锁实现,其实写锁本身实现的逻辑很少,基本上还是复用AQS内部的等待队列思想.下面,我们来看看ReentrantReadWrit ...

  4. 【译】GO语言:管理多个错误

    原文:https://medium.com/a-journey-with-go/go-multiple-errors-management-a67477628cf1 ​ 关于开发者使用Go遇到的最大挑 ...

  5. Ubuntu 更换内核

    Ubuntu 更换内核步骤: 下载内核源码,例如wget https://git.kernel.org/torvalds/t/linux-4.17-rc2.tar.gz 按照需要的环境,sudo ap ...

  6. php mkdir 创建多级目录以及修改权限

    mkdir() 用法:mkdir($path,0777,true); 第一个参数:必须,代表要创建的多级目录的路径:第二个参数:设定目录的权限,默认是 0777,意味着最大可能的访问权:注意:mode ...

  7. 3、集成springfox-swagger 3.0.0 + 集成knife4j

    集成springfox-swagger 3.0.0 + 集成knife4j 1.基本用法 1.1.导入依赖 <!-- web接口 --> <dependency> <gr ...

  8. vim编辑器使用方法(相关指令)

    1.跳到文本的最后一行:按"G",即"shift+g" 2.跳到最后一行的最后一个字符 : 先重复1的操作即按"G",之后按"$& ...

  9. DHCP部署与安全

    1.DHCP作用 (Dynamic Host Configure Protocol)自动分配ip地址 2.DHCP相关概念 地址池/作用域:(IP.子网掩码.网关.DNS.租期),DHCP协议端口是U ...

  10. 《快来为你的 .NET 应用加个监控吧!》更新版本啦

    目录 导读 三种方式处理监控数据 主动推送 ASP.NET Core 自定义URL .NET diagnostics 自定义监控指标 导读 CZGL.ProcessMetrics 是一个 Metric ...