基本命令

将命令分类为获取信息类,文件管理类,目录管理类,文本处理类,系统类,工具类。

获取信息类

  1. uname
# 输出所有信息
# 一行输出,空格分割
uname -a # 输出内核名称
uname -s # Linux # 输出网络节点主机名 nodename
uname -n # small-pc # 输出内核发行版本号
uname -r # 4.10.0-28-generic # 输出 发行版本信息
uname -v # .... Ubuntu .... # 输出硬件平台
uname -i # x86_64 # 输出系统名称
uname -o # GNU/Linux
  1. printenv
  2. ls (列出文件和目录信息)

ls- l 显示 权限 - 硬链接数 - 属主 - 属组 - 档案大小 - 档案最后被修改的时间 - 档案名

目录的硬链接数 = 2 + 目录中的其他目录数 (2是指目录自己的引用即 . 及其上一层目录的引用)

  1. date (显示日期时间信息)

格式化输出 date '+%Y-%m-%d %H:%M:%S'

date +"%s" 获得1970年1月1号到今天的秒数

date --date=20001225 +"%s" 对日期20001225进行操作,或得1970-01-01到2000-12-25的秒数

  1. cal (显示日历)
  2. man (获取命令的帮助)

man -f man 查询与man有关的命令

man -k man 根据man关键字查找

  1. whatis (man -f的简略写法)
  2. apropos (man -k的简略写法)
  3. who (查看在线用户)
  4. lsb_release (查看发布版本信息)
  5. which (查看执行程序的完整路径名)

which -a 列出所有路径,不仅列出第一个

  1. whereis (搜寻文件路径)
  2. locate (寻找相关档案,通过/var/lib/mlocate/mlocate.db搜寻)

系统类

  1. fsck (file system check)

fsck /dev/sda7 如果硬盘/dev/sda7出现文件系统错误,可以通过fsck修复

  1. printenv (打印所有或部分环境变量)

  2. startx (启动X window,tty7必须没有其他窗口运行)

  3. exit (注销)

  4. shutdown (关机)

shutdown -h now

  1. reboot (重启)
  2. sync (同步内存和硬盘数据)
  3. init (切换执行等级 run level)

init 0 也可以关机

  1. passwd (修改密码)
  2. chgrp (修改组)

chgrp groupName fileName

  1. chown (修改拥有者)

chown ownerName fileName

chown ownerName:groupName fileName

  1. chmod (修改权限)

chmod 777 ~/bash.rc

chmod u+x ~/bash.rc

chmod 4755 同时修改SUID、SGID、SBIT

  1. umask (查看默认过滤属性,档案默认为666,目录默认为777)

umask -S 以符号形式查看

umask 002 修改umask为002

  1. chattr (修改隐藏属性,只在extx文件系统有效)

chattr [+-=][ASacdistu] fileName or dirName

A 存取时,atime不修改

S 同步写入磁盘

a 只能增加数据,对log有用

c 自动压缩

d 不被dump备份

i 不能被删除、改名、设定链接、也不能写入和新增资料

s 删除时完全移出硬盘

u 删除时仍留在磁盘

  1. lsattr (查看隐藏属性,只在extx文件系统有效)
  2. su (改变用户)

su - username 以登录方式改变用户

  1. updatedb (更新数据库,根据/etc/updatedb.conf配置文件更新/var/lib/mlocate/mlocate.db数据库)
  2. find (通过硬盘搜寻文件)

find / -mtime -n 搜寻n天之内更改过的档案

find / -mtime +n 搜寻n天之前更改过的档案

find / -mtime n 搜村n天之前的那一个修改过的档案

find / -newer file 列出比file还要新的档案

find / -user username 搜寻指定user的档案

find / -nouser 搜寻user不存在/etc/passwd的档案

find / -nogroup 搜寻档案group不存在/etc/group的档案

find / -name filename 根据档案名搜寻,可使用通配符

find / -type s 根据档案类型搜寻

find /bin /sbin -perm +6000 搜寻/bin和/sbin下具有SUID和SGID的档案

find / -perm +7000 - exec ls -l {} ; 找到具有所有特殊权限的档案,并执行ls -l,{}为find找到的内容,; -exec的结束,因为;在bash具有特殊含义,所有利用****转义

文件类

  1. touch (新建文件,修改档案时间)

touch -a 修改atime

touch -c 修改ctime

touch -m 修改mtime

  1. cp (复制、建立软链接、硬链接)

cp -a 一模一样地复制

cp -u 新的才会被复制

  1. rm (删除)
  2. mv (移动或重命名)
  3. basename (取得文件名)
  4. dirname (得去目录名)
  5. file (查看文件类型)

目录类

  1. mkdir (新建目录)

mkdir -m 755 newdir 指定权限

mkdir -p test1/test2/newdir 递归建立目录

  1. cd (切换目录)

. 当前目录

.. 上一层目录

- 前一个工作目录

~ 家目录

~account account的家目录

  1. pwd (打印当前目录)

pwd -P 打印软链接指向的真实位置

  1. rmdir (删除目录)

rmdir -p 连同空目录一起删除

  1. file (查看目录类型)

工具类

  1. bc (计算器)

scale=3 设置小数点位数为3

quit 离开

  1. lp (打印指令)
  2. nano (简单的文本编辑器)
  3. cat (查看所有文本内容,不可翻页)
  4. tac (从最后一行开始显示文本内容,不可翻页)
  5. nl (cat同时显示行号,不可翻页)
  6. more (查看文本,可翻页)
  7. less (与more类似,能往前翻页)
  8. head (读取文本前面部分)

head -n 100 指定行数

  1. tail (读取文本后面部分)
  2. od (二进制形式读取文本)

od -t c fileName 使用ascii字符输出

知识点

常用热键

  1. tab

一下tab能进行命令补全和档案补全

两下tab能列表可能的待选项

  1. [Ctrl] + c (中断目前程序)
  2. [Ctrl] + d (代表输入结束,类似于exit)

硬件对应文件名

  1. /dev/hd[a-d] IDE接口硬盘
  2. /dev/sd[a-p] SCSI/SATA/USB对应硬盘.u盘
  3. /dev/fd[0-1] 软盘
  4. /dev/lp[0-2] 25针打印机
  5. /dev/usb/lp[0-15] usb打印机
  6. /dev/usb/mouse[0-15] usb鼠标
  7. /dev/cdrom 当前CDROM/DVDROM
  8. /dev/mouse 当前鼠标
  9. /dev/eth[0-n] 网络卡

第一个扇区(sector)的512bytes分成446bytes的MBR开机管理程序和64bytes的分区表。

主要分割(primary partition)和延伸分割(extended partition)最多有4个。延伸分割(extended partition)最多有一个,这是操作系统限制的。延伸分割不能进行格式化。

开机管理程序可以安装在MBR或Boot Sector。通过spfdisk处理MBR,或通过linux救援模式处理MBR。使用spfdisk时,要把grub安装在boot sector。

光驱可以挂载到 /media/cdrom点 或 /mnt点

NAT是私有IP转公有IP。DHCP自动获取IP。

启动流程 BIOS -> MBR -> boot loader -> 操作系统

grub是一种开机管理程序(boot loader),安装在MBR或boot sector。

RAIDLVM 是硬盘特殊的应用。

grub 安装在hda 即为安装在MBR上

笔记本安装有问题时可以在安装开始时提供核心参数 boot: linux nofb apm=off acpi=false pci=noacpi

linux核心档案 /vmlinuz-2.6.18-128.el5

SELinux工具 是linux的系统访问控制设定,用于权限控制

kdump 将内存错误写入档案

启动时进入 grub 输入single进入单人模式,输入passwd修改root密码

文件可以分为 纯文本二进制数据格式文件

分号 ; 连续指令下达

环境变量

  1. LANG (系统语系,英文为en_US.UTF-8,繁体中文为zh_TW.UTF-8)
  2. PATH (命令搜寻路径)

PATH = "$PATH":/root 将:/root添加值PATH

man中数字含义

通过 man 7 man 可以查看相关说明

1 -> shell指定或可执行文件

2 -> 系统呼叫或工具

3 -> 函数和函数库,大部分为c函数

4 -> 硬件档案,/dev下的档案

5 -> 配置文件

6 -> 游戏

7 -> 协议

8 -> 管理指令

9 -> 内核文件

文件系统

  1. ext2/ext3 ext3比ext2多了日志系统
  2. LVM
  3. software RAID 利用软件仿真出磁盘阵列
  4. swap 内存置换空间
  5. vfat 同时被linux和windows支持的文件系统

目录文件

/root
/root/install.log //安装过程的完整记录
/root/anaconda-ks.cfg //安装过程选择的安装选项
/etc
/etc/inittab //设置开机参数,如默认的run level
/etc/issue //命令提示符的前两项提示,用户账号和主机名,欢迎页面信息
/etc/man.config //man的配置,如man搜寻路径
/etc/passwd //记录用户信息
/etc/shadow //记录用户密码
/etc/group //记录组名
/etc/sysconfig
/etc/bashrc //bash启动预设值,如umask
/etc/profile //开机启动预设环境变量
/etc/sysconfig/i18n //可修改系统默认语系和字体
/etc/init.d //所有服务的预设启动脚本
/etc/xinetd.d //守护进程配置目录
/usr //与软件执行有关,unix software resource
/usr/share
/usr/share/man //存放man文档
/usr/share/doc //存放说明文档
/usr/bin //用户指令
/usr/include //c和c++的一些头文件
/usr/include //c和c++的一些库文件
/usr/src //软件的源代码
/home
~/.bashrc //用户个人的bash启动预设值
/var //系统默认的数据暂存和缓存的地方,与系统运作有关
/bin //可执行程序,单人模式下也能操作
/boot //开机使用的档案,linux kernel常用档名为vmlinuz
/dev //硬件设备
/lib //系统的函数库
/media //媒体硬件
/mnt //用于暂时挂载额外设备
/opt //第三方软件
/root //root用户的家
/sbin //管理员程序
/tmp //临时文件
/proc //虚拟文件系统,在内存当中
/sys //虚拟文件系统,在内存当中

/etc/bin/dev/lib/sbin 不能和根目录放在不同的分割槽中。

网络相关

192.168.1.100 一般是本地局域网中路由器自己的IP地址。

系统相关

  1. run level (共有7个run level 可以通过/etc/inittab更改)

run level 0 -> 关机状态

run level 3 -> 只有tty1-tty6,即只有命令窗口

run level 5 -> 具有tty1-tty7,既有命令窗口又有图形窗口。一般initdefault为5

文件相关

文件有三种时间:

  1. mtime 文件内容被修改的时间。
  2. ctime 文件元数据被修改的时间。
  3. atime 文件访问时间。

SUID、SGID、SBIT

  1. s出现在拥有者的x权限上,称为Set UID。

    1.1 仅对二进制文件有效,执行者需要x可执行权限,只在执行程序过程中有效,执行过程中将具有owner权限。

    1.2 例如passwd程序对于/etc/passwd文件,执行passwd时就set uid
  2. s出现在群组的x权限上时,称为 Set GID。

    2.1 对于档案来说,对二进制文件有效,执行者需要x可执行权限,执行者在执行程序时将具有group的权限。

    2.2 对于目录来说,执行者具有r和x权限时,可以进入该目录,在该目录下时将具有group的权限,若执行者具有w权限,创建新档案时的群组与该群组相同

    2.3 在该目录新建档案,档案的群组为目录的群组,(共同开发时具有较大用处)
  3. SBIT Sticky Bit

    3.1 t出现在其他者的x权限上时,称为SBIT Sticky bit

    3.2 仅对目录有效,当执行者具有w和x权限时,可以进入此目录,在该目录下新建的档案,只有执行者和root可以删除。

其他

linux备忘录-文件系统管理

linux备忘录-档案与文件系统的压缩与打包

linux备忘录-vi和vim

linux备忘录-bash

linux备忘录-正则表达式与文件格式化处理

linux备忘录-shell脚本

linux备忘录-账号管理与ACL权限设定

liniux备忘录-磁盘配额与进阶文件系统管理

linux备忘录-例行性工作排程 (crontab)

linux备忘录-程序管理与SELinux

linux备忘录-系统服务daemon

linux备忘录-日志档案

参考

鸟哥的linux私房菜 第三版

linux备忘录-基本命令的更多相关文章

  1. 二:Linux 的基本命令、VI编辑器、Linux中软件安装

    Linux 的基本命令 1. 文件操作 a) Windows 是多根的文件系统,物理上是 1 到多块硬盘,逻辑上分为 C.D.E--盘, 每个盘都是一棵树.Linux 是单根的文件系统,不分 CDE ...

  2. 第四周博客之一---Linux的基本命令(前5个)

    一.Linux的系统结构 "/"根目录部分有以下子目录: 1./bin:系统启动时需要的执行文件(二进制),这些文件可以被普通用户使用. 2./boot:用于自举加载程序(LILO ...

  3. Linux 的基本命令

    Linux 的基本命令 1. 文件操作 a) Windows 是多根的文件系统,物理上是 1 到多块硬盘,逻辑上分为 C.D.E……盘, 每个盘都是一棵树.Linux 是单根的文件系统,不分 CDE ...

  4. Linux常用基本命令(less)

    转: Linux常用基本命令(less) LESS:跟more命令的功能类似,都是用于分页显示内容,但是他的性能比more更高,功能比more更丰富,他读取文件是按需加载 格式: less [opti ...

  5. Linux 常用基本命令及应用技巧

    需要pdf 版 联系我 我的文件中有目录一.Linux 的常用基本命令................................................................. ...

  6. Linux操作系统-基本命令(二)

    Linux操作系统基本命令 文件操作类命令 – ln命令 另外一种链接方式称为符号链接(软链接),是指一个文件指向另外一个文件的文件名.软链接类似于Windows系统中的快捷方式.软链接由ln -s命 ...

  7. Linux文件基本命令

    Linux文件基本命令学习 操作技巧: 输入文件/目录/命令的前几个字母之后,按下tab键,则自动补全 按上/下,回滚曾经用过的命令 不想执行命令使用:crtl + c 基础命令: ls(查看) 基础 ...

  8. linux基础-基本命令的讲解(1-7单元)

    基本命令的讲解 主要内容介绍 1.LINUX操作系统安装及初始化配置(熟悉):2.LINUX操作系统目录组成结构及文件级增删改查操作(重点):3.LINUX操作系统用户.权限管理(重点):4.开源软件 ...

  9. 【Linux】linux常用基本命令(转)

    (转自:http://blog.csdn.net/xiaoguaihai/article/details/8705992) Linux中许多常用命令是必须掌握的,这里将我学linux入门时学的一些常用 ...

随机推荐

  1. .svn文件被删除的解决办法

    不小心把文件夹下的.svn给删除了,svn提交时会报如下错误: 包含工作副本管理数据的目录“/home/usa/svn/aispeech/air201102/branches/tools/res/di ...

  2. IE 8 下小心使用console.log()

    我们很多情况下会使用console.log() 对代码调试.在chrome下和Firefox下都不会有太大问题,但是在最近我在IE8 下调试时使用了console.log(),就出现一些问题.在IE8 ...

  3. javabeans 内省 introspector BeanUtils

    javaBeans 属性的概念 不只是字段,而是其get set 方法 且该get方法有返回值的称为属性,继承Object类的getClass方法 package com.swift.demo1; p ...

  4. 写给iOS小白的MVVM教程(一): 从MVC到MVVM之一个典型的MVC应用场景

    前言 本着实践为主的原则,此系列文章不做过多的概念性的阐述和讨论;更多的代码和篇幅用来展示MVC和MVVC下的基础代码结构与具体实现,来展示各自优劣.这篇文章,更多的在于发掘MVC与MVVC的共性,以 ...

  5. iOS程序猿如何快速掌握 PHP,化身"全栈攻城狮"?

    这是一篇以 iOS 开发人员的视角写给广大iOS 程序猿的 PHP 入门指南.在这篇文章里我努力去发掘 objectiv-c 与 php 之间的共性,来帮助有一定 iOS 开发经验的攻城狮来快速上手一 ...

  6. ubuntu built-in display 产生的一个原因

    在没有禁用开源的显卡驱动 nouveau 下,从 apt 安装了nvidia的驱动,导致了后面开机后,系统不能正确的识别到显示器,整个界面分辨率变的非常小,在设置菜单中的显示设置中也不能调节分辨率,并 ...

  7. 6-2 python 操作数据库mysql

    1.python操作MySQL的 查询(select操作) 步骤 import pymysql # 1.建立数据库连接 conn = pymysql.connect(host='118.24.3.40 ...

  8. ethereum(以太坊)(三)--合约单继承与多继承

    pragma solidity ^0.4.0; // priveta public internal contract Test{ //defualt internal uint8 internal ...

  9. 【jQeury】input输入框状态,input事件,blur事件,focus事件

    //输入框正在输入时 $("#test1").on('input',function(){ alert('正在输入'); }) //输入框得到焦点时 $("#test2& ...

  10. 在ubuntu上安装subline

    Sublime Text is a most popular, lightweight and smart cross-platform text and source code editor wit ...