linux命令行大全 笔记,《Linux命令行大全》读书笔记

66b52468c121889b900d4956032f1009.png

8种机械键盘轴体对比

本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选?

shell就是一个程序,它接受从键盘输入的命令,然后把命令传递给操作系统执行。当使用图像用户界面时,我们需要一个叫做终端仿真器的程序和shell作交互。超级用户的提示符是$,普通用户的提示符为#.

一些简单的命令date:显示系统当前的日期和时间

cal:显示当前月份的日历

df: 查看磁盘剩余空间的数量

free:显示内存空闲的数量

exit: 结束终端会话

第二章 文件系统中跳转

显示当前工作目录

pwd

列出目录内容

ls

更改当前工作目录

cd

相对路径.: 工作目录

..: 工作目录的父目录

~: 家目录

第三章 研究操作系统

ls命令选项和参数选项长选项描述-a–all列出所有文件包括隐藏文件

-h–human-readable以人们可读的格式列出

-l以长格式显示结果

-r–reverse以相反的顺序显示结果

-S按文件大小来排序

-t按修改时间来排序

深入研究长格式-rw-r–r– 1 ma staff 4579 2 3 10:09 debug.log字段含义-rw-r–r–文件的访问权限。第一个字符指明文件类型,‘-’是一个普通文件,‘d’是一个目录。后面三个是所有者的权限,再三个是群组成员的权限,后三个是其它人的权限。

1文件的硬链接数目

Ma文件所属的用户名

staff文件所属的群组名

4579以字节数表示的文件大小

—-上次修改的文件日期

***文件名

确定文件类型file filename

用less浏览文件内容Less filename

less常用的键盘命令:命令行为page up or b向上翻页

page down or space向下翻页

G移动到最后一个行

1G or g移动到开头一行

/characters向前查找指定的字符串

n向下查找下一个出现的字符

h显示帮助

q退出less

第四章 操作文件和目录

通配符通配符意义*匹配任意多个字符,包括0个和1个

?匹配任意一个字符

[characters]匹配任意一个属于字符集中的字符

[!characters]匹配任意一个非字符集中的字符

[[:class:]]匹配任意一个指定类中的字符

常用的字符类:

| 字符符 | 意义 |

| ———————- | —————————— |

| [:alnum:] | 匹配任意一个字母或数字 |

| [:alpha:] | 匹配任意一个字母 |

| [:digit:] | 匹配任意一个数字 |

| [:upper:]或者[:lower:] | 匹配任意一个大写或者小写字母 |

mkdir创建目录mkdir dir1 dir2

创建目录dir1和dir2

cp 复制文件和目录cp item1 item2

cp item1… directory

一些有用的选项选项意义-a, –archive复制文件和目录,以及他们的属性

-i, –interactive-i, –interactive

-r, –recursive递归地复制目录和文件,复制目录时,需要这个选项

-u, –update仅复制目标目录中不存在的文件

mv 移动和重命名文件mv item1 item2

一些选项选项意义-i, –interactive-i, –interactive

-u, –update仅复制目标目录中不存在的文件

rm 删除文件和目录

rm选项和意义:选项意义-i,–interactive删除前提示用户

-r,–recursive递归地删除文件,若删除目录则需指定这个选项

-f,–force忽视不存在的文件,不显示提示信息

-v,–verbose执行命令时,显示详实的信息

Linux系统没有复原命令,一旦用rm删除一些东西,就永远消失了,所以无论啥时候,rm命令用到通配符的时候,先用ls测试通配符。

第五章 使用命令

命令是什么

命令可以是下列4种形式之一:是一个可执行程序

是一个内建于shell自身的命令

是一个shell函数

是一个命令别名

显示命令的类型

type是shell的内部命令,它会显示命令的类别,给出一个特定的命令名。

显示一个可执行程序的位置

使用which命令可以确定所给定的执行程序的准确位置。

得到shell内部命令的帮助文档

使用help command命令得到命令的帮助文档;许多可执行程序支持--help选项,显示此命令支持的语法和选项说明。

man 显示程序手册页

whatis 显示非常简洁的命令说明

info 显示程序的Info条目

创建别名

使用alias命令创建命令的别名,使用方法alias name=’string’

注意:name与string之间没有空格。string是一系列的命令,name是这一系列命令的别名,下次输入name时等价于输入string。

使用unalias命令删除别名。

第六章 重定向

标准输入输出

一般地,输出送到屏幕,输入来自键盘,但是通过I/O重定向我们可以改变输入输出的方向。

重定向标准输出

使用>重定向符,后面跟着文件名,则会把原本输出到标准输出的内容输出到重定向符后面的文件中。需要注意的是使用>重定向符重定向输出结果时,目标文件总是从头开始被重写。所以当我们需要删除一个文件内容或者新建一个空文件的时候,可以使用这样一个技巧:> filename

使用>>重定向符可以把重定向结果追加到文件内容后面,而不是重头开始写文件,如果文件不存在,文件会被新建。>> filename

重定向标准错误

文件描述符0,1,2分别表示标准输入、输出和错误。ls -l /bin/usr 2> ls-error.txt

文件描述符’2‘紧挨着放在重定向符之前,执行重定向标准错误到文件ls-error.txt任务。

重定向标准输出和错误到同一个文件

第一种方法:ls -l /bin/usr > ls-output.txt 2>&1

这里使用了两次重定向,首先重定向标准输出到文件ls-output.txt,然后重定向文件描述符2到文件描述符1,使用表示法2>&1.

第二种方法:ls -l /bin/usr &> ls-output.txt

处理不需要的输出ls -l /bin/usr 2> /dev/null

重定向标准输入

cat 连接文件

cat命令读取一个或多个文件,然后复制他们到标准输出,cat经常用来显示简短的文本文件。cat [file]

cat可以将多个文件连接成或者合并为一个文件:cat file1 … filem > cat_file

管道线

管道线操作符|可以使一个命令的标准输出作为另一个命令的标准输入:command1 | command2

过滤器sort,排序

uniq,忽略重复行

wc,打印行,字和字节数

grep,打印匹配行

head/tail,打印文件开头、结尾部分

第七章 从shell眼中看世界

字符展开

算术表达式展开

花括号展开

通过它可以从一个包含花括号的模式中创建多个字符串。ma$ echo F-{a,b,c}-B

F-a-B F-b-B F-c-Bma$ echo {1..10}

1 2 3 4 5 6 7 8 9 10echo {A..Z}

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

参数展开

其实就是shell中的变量。

命令替换ma$ ls -l ​$(which cd)

-rwxr-xr-x 15 root wheel 190 8 18 08:20 /usr/bin/cd

which cd会返回一个路径。

双引号

双引号中的文本被当做普通字符看待,但是参数展开和算术表达式展开仍然有效。

单引号

所有的展开将被禁止。

转义字符转移序列含义a响铃

b退格键

n换行

r回车符

t制表符

第八章 键盘高级技巧

移动光标按键行动Ctrl-a移动光标到行首

Ctrl-e行尾

Ctrl-f右键头

Ctrl-b左箭头

Alt-f光标前移一个字

Alt-b光标后移一个字

Ctrl-l清空屏幕,同clear命令相同

修改文本按键行动Ctrl-d删除光标位置的字符

Ctrl-t光标位置的字符和光标前面的字符互换位置

Alt-t光标位置的字和前面的字互换位置

Alt-l把光标位置到字尾的字符换成小写字母

Alt-u把光标位置到字尾的字符换成大写字母

剪切和粘贴按键行动Ctrl-k剪切光标位置到行尾的文本

Ctrl-u剪切光标位置到行首的文本

Alt-d剪切光标位置到词尾的文本

Alt-backspace剪切光标位置到词头的文本

Ctrl-y把剪切板的内容粘贴到光标位置

历史命令

history显示历史命令。

可以通过history | less

来浏览历史命令。通过执行history | grep 目录

来找到此目录中的命令。通过!行号

来执行历史命令中此行号对应的命令。

第九章 权限

创建一个文件并显示它的详细信息$ > foo.txt

$ ls -l foo.txt

-rw-r–r– 1 ma staff 0 2 16 19:46 foo.txt

显示的前十个字符是文件的属性,第一个字符表示文件的类型。下表是文件常见的类型:属性文件类型-普通文件

d目录

l符号链接

c字符设备文件

b快设备文件

剩下的九个字符代表文件所有者、文件组所有者、其他人的读写和执行权限。

chmod 更改文件模式

可以使用两种方法改变文件模式:八进制数字表示法和符号表示法。

数字表示法

因为对所有者、群组和其他人分别有r、w、x三种权限,所以假如对于所有者的权限来讲,所有者对文件有r权限和w权限,但是x权限没有,那么他有的权限的位置就置为1,反之为0,那么对应地二进制表示为110,与此对应的八进制为6,即所有者的权限用一个4表示,其它群组和其他人时同理,所以一个文件可以用3个八进制数字表示它的权限模式。例如改变foo.txt的文件权限:$ chmod 600 foo.txt

$ ls -l foo.txt

-rw——- 1 ma staff 0 2 16 19:46 foo.txt

符号表示法

符号表示法分为3个部分:更改会影响谁,要执行那个操作,要设置哪种权限。符号含义u文件所有者

g用户组

o其他人

au、g、o三者的组合

若没有指定字符,则假定使用a。

执行的操作有两种:+增加一个权限,-删掉一个权限。

权限用r、w、x指定。例如$ chmod g+r foo.txt

$ ls -l foo.txt

-rw-r—– 1 ma staff 0 2 16 19:46 foo.txt

更改身份

su 以其他用户和组ID运行一个shell

su命令以另一个用户的身份来启动shell:su [-[l]] [user]

如果包含-l选项,那么会为指定用户启动一个需要登录的shell,意味着会加载这个用户的shell环境,并且工作目录会更改到这个用户的家目录。如果不指定用户,则默认启动超级用户。-l可以缩写为-,例如启动超级用户:su -

当工作完成后,输入exit返回原来的shell。也可以只执行单个命令,而不是启动一个新的可交互的shell,su -c ‘command’

命令用单引号括起来。

sudo 以另一个用户身份执行命令

sudo很多方面类似于su,但sudo还有其他一些总要的功能。管理员可以配置sudo命令,从而使用户以不同身份通过一种可控的方式来执行命令。sudo命令不要求超级用户的密码,而是需要自己的密码来认证。sudo命令不会重新启动一个shell,命令不必用单引号括起来。

chown 更改文件所有者和用户组

使用这个命令需要超级用户权限。命令语法:chown [owner][:[grou]] file…

更改用户密码

只要输入passwd命令,就能更改你的密码。

ReferencesWilliam E.Shotts,Linux命令行大全

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/571804.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

dedecms 添加,编辑文章时 文章标题有字数限制的解决办法。

百度上说 解决方法有两步: 一、先要在系统参数下的其他选项中修改文档标题最大长度(如修改为150), 后台系统 - 其它选项 - 文档标题最大长度 默认的是60改为150, 二、修改默认参数后,需要手工修改数据表。 …

python绘制散点图、如何选两列作为横坐标_在matplotlib散点图(水平杆图)中从x=0到数据点绘制水平线...

考虑以下情节:由此函数生成:def timeDiffPlot(dataA, dataB, savetoNone, legNone): labels list(dataA["graph"]) figure(figsizescreenMedium) ax gca() ax.grid(True) xi range(len(labels)) rtsA dataA["running"] / 1000.0…

python运行命令_Python中执行外部命令

有很多需求需要在Python中执行shell命令、启动子进程,并捕获命令的输出和退出状态码,类似于Java中的Runtime类库。 subprocess模块的使用: Python使用最广泛的是标准库的subprocess模块,用来替换os.system(),os.spawn*(),os.popen…

linux多选项菜单脚本,linux shell 编写菜单脚本事例

menu2文件代码:---#!/bin/sh#menu2#Main menu script#ignore ctrl-c and QUIT interruptstrap "" 2 3 15MYDATEdate %d/%m/%YTHIS_HOSThostname -sUSERwhoami#user level fileUSER_LEVELSpriv.user#hold fileHOLD1hold1.$$#colour functionfunction colou…

python简单爬虫入门一_Python爬虫快速入门:基本结构简单实例

本爬虫系列入门教程假设读者仅有一点点Python基础或者近乎为零的基础。如果是有Python基础的可以跳过一些对于Python基本知识的补充。 爬虫能干什么呢?一句话概括,正常通过浏览器可以获取的数据,爬虫都可以获取。这句话可以说是包罗万象。一是…

Windows下rocketmq mqnamesrv.exe 启动成功,但是mqbroker.exe启动失败

1、mqnamesrv.exe启动成功 2、启动mqbroker.exe失败 解决办法,删除C:\Users\"当前系统用户名"\store下的所有文件,就可以了转载于:https://www.cnblogs.com/roujingchuxia/p/7685796.html

python加入中小学课程_通知:中小学将新增一门课!对2008-2013年出生的孩子影响最大!...

很多家长都在发愁: “现在孩子竞争这么激烈,奥数、外语、舞蹈、钢琴...样样都行,我该让孩子学点什么,才不会被同龄人甩下?” 其实,人工智能时代,孩子们的竞争战地正在转到——少儿编程&#xff…

linux --- vsftp

vsftp 一、简介与原理 1、VSFTP(very secuery file tranfer protocol) 2、主动模式: 3、被动模式: 4、服务器程序: > vsftpd 5、install: >vaftpd-2.2.2-11.e16.i686.rpm >yum -y install vsftpd …

go tcp客户端自动重连_使用 Go 语言创建 WebSocket 服务

今天介绍如何用 Go 语言创建 WebSocket 服务,文章的前两部分简要介绍了 WebSocket 协议以及用 Go 标准库如何创建 WebSocket 服务。第三部分实践环节我们使用了 gorilla/websocket 库帮助我们快速构建 WebSocket 服务,它帮封装了使用 Go 标准库实现 WebS…

linux系统终端more,一篇文章让你学透Linux系统中的more命令

Linux系统下有很多实用工具可以让你在终端界面查看文本文件。其中一个就是 more。more 跟我之前另一篇文章里写到的工具 —— less 很相似。它们之间的主要不同点在于 more 只允许你向前查看文件。尽管它能提供的功能看起来很有限,不过它依旧有很多有用的特性值得你…

python项目开发案例集锦_在线分享 | 在 VS Code 中一站式完成 Python 项目开发

往期活动回顾VS Code 中文社区自成立以来,已经举办了4场活动:Workshop | First Step to VS Code 基础篇 Workshop | First Step to VS Code 进阶篇 在线沙龙 | 程序员职业生涯如何不迷茫 干货回顾 | VS Cod…

jvm--Garbage Collection

垃圾回收(GC)一直是java语言的重中之重。 1 对象状态鉴别 1.1 标记对象是否可回收一般有两种算法: 引用计数算法:给每个对象添加一个引用计数器,当引用一次时1,当引用时效时-1,当计数器为0时即可…

linux安装mongo卸载mongo,CentOS7安装及卸载MongoDB.md

安装 MongoDB 社区版本配置 yum 包管理系统创建 /etc/yum.repos.d/mongodb-org-4.2.repo 文件,这样你就可以使用 yum 安装 MongoDB,文件内容如下:123456[mongodb-org-4.2]nameMongoDB Repositorybaseurlhttps://repo.mongodb.org/yum/redhat/…

程序固化到优盘中_将Windows 8/10 系统装进优盘

介绍Windows To Go技术Windows 有一项相当吸引人的神奇功能——“Windows To Go”,它可以让你将 Windows 完整安装到U盘、移动硬盘等便携设备上,并且能随处在不同的电脑硬件上直接运行,让系统可以随身携带!简单说来,这…

如何获得物体的主要方向?

问题来源为网友提供的资料,原文地址为:《Object Orientation, Principal Component Analysis & OpenCV》 问题描述:对于这样的图像(2副,采用了背投光),如何获得上面工件的主要方向主要思路&…

Linux的开源免费办公软件,开源免费Office办公套件(LibreOffice)

LibreOffice是一款全面的开源免费Office办公套件,软件拥有强大的数据导入和导出功能,能直接导入 PDF 文档、微软 Works、LotusWord,支持主要的 OpenXML 格式。软件本身并不局限于 Debian 和Ubuntu 平台,支持 Windows、Mac、PRM pa…

ubuntu安装ftp_如何在 Ubuntu 20.04 上安装 Webmin

本文最先发布在: 如何在 Ubuntu 20.04 上安装 Webmin​www.itcoder.techWebmin 是一个开源控制面板,它允许你通过简单易用的 Web 界面,就可以管理你的 Linux 服务器。它允许你管理用户,组,磁盘配额,创建文件…

c++ auto用法_不想写表达式的类型?试试auto吧

作者:守望,Linux应用开发者,目前在公众号【编程珠玑】 分享Linux/C/C/数据结构与算法/工具等原创技术文章和学习资源。前言你以为我说的自动变量类型auto吗?非也,我们知道C语言中其实也有auto关键字,它和早…

浅谈内存映射I/O(MMIO)与端口映射I/O(PMIO)的区别

最近在看NVMeDirect和SPDK的源码,觉得有必要梳理一下MMIO和PMIO的区别。关于MMIO和PMIO,维基百科上是这么讲滴, Memory-mapped I/O (MMIO) and port-mapped I/O (PMIO) (which is also called isolated I/O) are two complementary methods o…

linux sftp密码错误,linux个别用户sftp坏掉,验证密码后卡住, 大概是什么问题?...

问题描述linux个别用户sftp坏掉,验证密码后卡住, 大概是什么问题?所有采用sftp的软件都不能用了winsshfs 点击mount后就卡住xftp 连接验证结束后也卡住sublimeText3 的sftp插件也不好用了突然发生的情况之前一直用着都没有问题一直正常使用 只…