一、基本的bash shell命令(基于Ubuntu实现)

/etc/passwd文件包含了所有系统用户账户列表以及每个用户的基本配置信息。

man命令

在想要查找的工具的名称前输入man命令,就可以找到那个工具对应的手册条目。

  • 空格 向下翻页
  • 回车 向下逐行
  • b 向上翻页
  • q 退出

Linux顶层虚拟目录名及其内容

遍历目录

cd命令

$ cd destination
  • 绝对文件路径:绝对文件路径总是以正斜线(/)作为起始,指明虚拟文件的根目录。可以清晰表明用户想切换到的确切位置。
  • 相对文件路径:允许用户指定一个基于当前位置的目标文件路径。相对文件路径不以代表根目录的正斜线(/)开头,而是以目录名或是一个特殊字符开始。
$ pwd

pwd命令可以显示出shell会话的当前目录。

  1. 单点符(.) 表示当前目录;
  2. 双点符(..) 表示当前目录的父目录

基本列表功能

ls命令

ls命令最基本的形式会显示当前目录下的文件和目录

$ ls
  1. -F  参数的ls命令轻松区分文件和目录
  2. -a  参数会把隐藏文件和普通文件及目录一起显示出来
  3. -d  显示目录自身属性,不显示内容。
  4. -R  递归选项。列出了当前目录下包含的子目录中的文件。
  5. -l    会产生长列表的输出,包含了目录中每个文件的更多相关信息。
  6. -l --time=atime  显示出文件的访问时间。(-l显示的是修改时间)
  7. -i    查看文件或目录的inode编号(inode编号是一个用于标识的唯一数字,由内核分配给文件系统中的每一个对象)

每部分所显示的信息如下:

ls -F -R 可以合并为 ls -FR。

  • 问号(?)代表一个字符;
  • 星号(*)代表零个或多个字符。

ls -l 可以列出单个特定文件的信息。

创建文件

touch命令

$ touch test_one

创建一个空文件,文件大小为零,并将自己的用户名作为属主。

touch命令可以用来改变文件的修改时间(同时改变访问时间)。

  • -a  只改变访问时间

复制文件

cp命令

$ cp source destination
  1. 都是文件名时,cp命令将源文件复制成一个新文件,并且以destination命名。有新的修改时间;
  2. cp -i 强制询问是否需要覆盖已有文件;
  3. 可以将文件赋值到现有目录中(目标目录名尾部加上一个正斜线(/),否则会创建尾目录同名的文件);
  4. cp -R 递归地复制整个目录内容。

tree命令

树形显示文件结构

链接文件

ln命令

  • 符号链接
  • 硬链接

符号链接示例

ln -n 原始文件 符号链接名字

li@li:~/myUbuntu$ ls -l mn
-rw-rw-r-- li li 10月 : mn
li@li:~/myUbuntu$ ln -s mn sl_mn
li@li:~/myUbuntu$ ls -l *mn
-rw-rw-r-- li li 10月 : mn
lrwxrwxrwx li li 10月 : sl_mn -> mn

硬链接示例

ln 原始文件 硬链接名字

li@li:~/myUbuntu$ ls -l *mn
-rw-rw-r-- li li 10月 : mn
lrwxrwxrwx li li 10月 : sl_mn -> mn
li@li:~/myUbuntu$ ls -l mn
-rw-rw-r-- li li 10月 : mn
li@li:~/myUbuntu$ ln mn h_mn
li@li:~/myUbuntu$ ls -l *mn
-rw-rw-r-- li li 10月 : h_mn
-rw-rw-r-- li li 10月 : mn
lrwxrwxrwx li li 10月 : sl_mn -> m
li@li:~/myUbuntu$ ls -il *mn
-rw-rw-r-- li li 10月 : h_mn
-rw-rw-r-- li li 10月 : mn
lrwxrwxrwx li li 10月 : sl_mn -> mn

重命名文件

mv命令

mv命令可以将文件和目录移动到另一个位置或重新命名。

  • -i 在命令试图覆盖已有文件时,询问是否覆盖。

删除文件

rm命令

  • -i 提示你是不是要真的删除改文件。
  • -f 如果要删除很多文件且不受提示符的打扰,-f参数强制删除。

创建目录

mkdir命令

  • -p 同时创建多个目录和子目录

删除目录

rmdir命令

默认情况下,rmdir命令只删除空目录。

rm命令

  • -r 使得命令可以向下进入目录,删除其中的文件,然后再删除目录本身。
  • -i 提示是否真的删除
  • -ir 进入目录后,将会提示是否删除每一个文件

查看文件内容

查看文件类型:

file命令

$ file my_file

查看整个文件:

1.cat命令

$ cat my_file
  • -n 会给所有的行加上行号
  • -b 只给有文本的行加上行号
  • -T 不让制表符出现(呈现出^T)

2.more命令

more命令会显示文本文件的内容,但会在显示每页数据之后停下来。向下翻页空格,向上翻页b键(阅读到结尾及退出,所以到结尾无法向上翻页),回车向下逐行。

$ more my_file

3.less命令

更高级的功能。可以上下键以及上下翻页(阅读到结尾可向上翻页,q退出)

查看部分文件:

1.tail命令

$ tail my_file

tail命令会显示文件最后几行的内容(文件的“尾部”)。默认最后十行。

  • -n 数字:只显示最后数字行
  • -数字:只显示最后数字行
  • -f :允许你在其他进程使用改文件时查看文件的内容。保持活动状态(检测系统日志)

2.head命令

$ head my_file

head命令会显示文件开头几行的内容(文件的“头部”)。默认开头十行。

  • -n 数字:只显示开头数字行
  • -数字:只显示开头数字行

没有-f参数。

一、基本的bash shell命令(基于Ubuntu实现)的更多相关文章

  1. ipython, 一个 python 的交互式 shell,比默认的python shell 好用得多,支持变量自动补全,自动缩进,支持 bash shell 命令,内置了许多很有用的功能和函数

    一个 python 的交互式 shell,比默认的python shell 好用得多,支持变量自动补全,自动缩进,支持 bash shell 命令,内置了许多很有用的功能和函数. 若用的是fish s ...

  2. 第四章:更多的bash shell命令

    第四章:更多的bash shell命令 监测程序 ps (其他ps内容见#1 ) Unix风格的ps命令参数 参数 描述 -A 显示所有进程 -N 显示与指定参数不符的所有进程 -a 显示除控制进程( ...

  3. 基本bash shell命令

    以下列举一些常用的bash shell命令,在使用时方便查找. 访问Linux系统上的手册:man 命令.例:man ps      手册是由分页程序来显示的,可以通过点击 空格,回车,向上和向下箭头 ...

  4. 基本的bash shell命令

    目录 基本的bash shell命令 启动shell shell提示符 基本的bash shell命令 启动shell GNU bash shell 能提供对Linux系统的交互式访问.它是作为普通程 ...

  5. bash shell命令(2)

    在上篇<bash shell命令(1)>中,介绍了几种简单的linux shell命令,今天继续介绍bash shell命令 本文地址:http://www.cnblogs.com/arc ...

  6. 《Linux命令行与shell脚本编程大全》- 读书笔记2 - 更多的bash shell命令

    更多的bash shell命令 想检测进程,需要熟悉ps命令的用法.ps命令好比工具中的瑞士军刀,它能输出运行在系统上的所有程序的许多信息.默认情况下,ps命令只会显示运行在当前控制台下的属于当前用户 ...

  7. bash shell命令与监测的那点事(三)

    bash shell命令与监测的那点事之df与du 前两篇介绍了bash shell的进程监控指令,但是有时候你需要知道在某个设备上还有多少磁盘空间.首先介绍df命令: df命令 df命令就是用来轻松 ...

  8. bash shell命令与监测的那点事(二)

    bash shell命令与监测的那点事之top 上次我们说到了ps命令,ps命令虽然在收集运行在系统上的进程信息很有用,但是也有不足之处,ps命令只能显示某个特定时间点的信息,如果你想观察频繁换进换出 ...

  9. bash shell命令与监测的那点事(一)

    bash shell命令与监测的那点事之ps 学习LInux,不得不谈谈bash shell命令,介绍Linux命令行与Shell脚本的书有很多很多,bash shell命令也有很多,此次我们只谈谈有 ...

随机推荐

  1. Codeforces 1244G. Running in Pairs

    传送门 首先对于两个排列 $A,B$ 我们可以把 $A$ 从小到大排序并把 $B$ 重新和 $A$ 一一对应 显然这样不会影响 $\sum_{i=1}^{n}max(A_i,B_i)$ 的值 所以直接 ...

  2. Neo4j图数据库配置文件详解

    For more details and a complete list of settings, please see https://neo4j.com/docs/operations-manua ...

  3. 8-Perl 哈希

    1.Perl 哈希哈希是 key/value 对的集合.Perl中哈希变量以百分号 (%) 标记开始.访问哈希元素格式:${key}.以下是一个简单的哈希实例:#!/usr/bin/perl%data ...

  4. dev chart使用

    public class LineChartHelp { #region 折线图 /// <summary> /// 创建折线图 /// </summary> public v ...

  5. Java基础第三天--内部类、常用API

    形参和返回值 抽象类名作为形参和返回值 方法的形参是抽象类名,其实需要的是该抽象类的子类对象 方法的返回值是抽象类名,其实返回的是该抽象类的子类对象 接口名作为形参和返回值 方法的形象是接口名,其实需 ...

  6. string字符串长度和字节长度问题

    string str = "abcdef 安安安"; int i = str.Length; byte[] bt = System.Text.Encoding.Default.Ge ...

  7. vue的数据代理

    1. vue数据代理: data对象的所有属性的操作(读/写)由vm对象来代理操作2. 好处: 通过vm对象就可以方便的操作data中的数据3. 实现: 1). 通过Object.defineProp ...

  8. SmartBinding与kbmMW#2

    前言 在之前的文章中,我介绍了SmartBinding作为Delphi的一个新的易于使用和智能的绑定框架.介绍了包括绑定对象,列表,常规数据和可视控件,以及如何使用导航器,所有这些都用代码做了演示. ...

  9. php使用rdkafka进行消费

    如仅作为消费者或生产者,直接使用下面消费者或生产者的代码,并安装扩展即可. PHP要安装rdkafka扩展,而rdkafka又依赖librdkafka,因此你需要安装rdkafka和librdkafk ...

  10. mysql sleep 死锁例子

    表结构 CREATE TABLE `orders` ( `order_id` int(11) NOT NULL, `order_addr` varchar(255) DEFAULT NULL ) EN ...