linux-基础命令
[TOC]
基本命令
- date
- history:输出敲过的命令历史
- ctrl+p:上一个命令(比用方向键显得懂得更多)
- ctrl+n:下一个命令
- 光标
- 向后/左移动一个位置:ctrl+b(bacward)
- 移到最前:ctrl+a
- 移到最后:ctrl+e
- 向前/右动一个位置:ctrl+f(forward)
- 光标后面的字符是光标盖住的字符
- 删除光标前面所有字符:ctrl+u
- TAB键:cd 时,单次补全,双次列出所有子目录
- cd:目录切换
- cd -:在最近2个目录间切换
- . :代表当前目录;.. 代表上一级目录
sudo su
:切换到超级用户,输入的密码为当前用户的密码- $为普通用户,#为超级(root)用户
文件和目录操作
查看目录:
- ls
- -a(all):列出目录下的一切文件,包含隐藏文件
- -l:列出每个文件的详细信息,不含隐藏文件
- tree (brew install tree)
- pwd 输出当前的绝对路径
- ls
切换目录:cd
创建目录:
mkdir dirName
mkdir aaa/bbb/ccc -p
删除目录/文件:
rm
命令(删除空目录:rmdir dirName
)-r
递归删除,也就是删除它里面的所有文件包括目录-i
带提示 - 是真正删除,并不是放到回收站
创建文件:touch 文件名(存在的话,修改时间)
创建管道:
mkfifo 管道名
查看文件:
cat 文件名
:适合查看小文件more 文件名
: 回车显示下一行,可以空格键翻页,只能往后查看.less 文件名
:可以用ctrl+p,ctrl+f
前后翻页head 文件名
:默认显示前10行;head -5 文件名:显示前5行tail 文件名
:默认显示尾10行
拷贝:
- 拷贝文件 :
cp 文件名 temp
(temp不存在则创建,存在则覆盖temp中的内容) - 拷贝目录 :
cp 目录名 目的目录名 - r
(目的目录不存在则创建,存在则把待拷贝的目录及其所有文件 复制到指定目录)
- 拷贝文件 :
mv 源文件名 目的文件名
:- 目的文件名是存在的目录的名字,则移动源文件到目录文件夹
- 目的文件名不存在则,修改源文件名为新的文件名
创建软链接(快捷方式):
ls -n 文件/目录的绝对路径 软链接文件的名称
创建硬链接:
ls 文件的名称(不需要绝对路径) 硬链接文件的名称
- 硬链接并不占用磁盘空间,并不是复制一个文件,但拥有和源文件一样的大小
- 硬链接计数+1
- 用的i结点是同一个
- 只有文件才能创建硬链接
df -h(human以人看得懂的方式) 
which 命令名:查看命令所在的目录(内建命令查不出来which cd)
文件权限,用户,用户组
查看当前登录用户 :
whoami
修改文件权限(要掌握)
文字设定法:
chmod [who] [+|-|=] [mode]
who:
- 文件所有者: u
- 文件所属组:g
- 其他人: o
- 所有人: a
+(添加权限),-(减少权限),=(覆盖原来权限)
mode:
r w x
(读,写,执行)[目录创建出来时都有执行权限,若没有目录的执行权限则不能访问该目录]

数字设定法
-
没有权限r : 4 w : 2 x : 1
- eg:
chmod 777 文件名
(给文件添加满权限,顺序依次是文件所有者,所属的组,其他人) - eg:
chmod -001 文件名
(给文件减去其他人可执行的权限)
查看当前有哪些用户
- Mac下去
/Users
- Ubuntu下去
/home
- Mac下去
修改文件所有者(change owner):
sudo chown blts 文件名
(sudo为暂时借用一下权限)修改文件所属的组group:
sudo chown 新的用户名:组名 文件名
sudo chgrp 新的组名 文件名
文件的查找
- 按文件属性查询
- 按文件名:
find 查找的目录 -name "文件名"
- 按文件大小:
- 大于10k :
find 查找的目录 -size +10k
- 小于10M :
find 查找的目录 -size -10M
- 范围:
find 查找的目录 -size +10M -size -100M
- 大于10k :
- 按文件类型:
find 查找的目录 -type d | f | b |c | s | p | l
(f是普通文件)
- 按文件名:
- 按文件内容查找:
grep -r "查找的内容" 查找的路径
(-r表示递归查找)
程序包安装和卸载(ubuntu下)
- 在线安装
- apt-get(ubuntu自带,centos是yum命令)
- 安装/移除tree: sudo apt-get install/remove tree
- 更新本地软件列表(包含名称和下载地址,会从默认服务器更新):sudo apt-get update
- 清除下载到本地的安装包(.deb): sudo apt-get clean
- 目录:/var/cache/apt/archives
- aptitude(第三方安装工具)
- apt-get(ubuntu自带,centos是yum命令)
- deb包安装
- 安装 sudo dpkg -i xxx.deb
- 删除 sudo dpkg -r xxx
- 源码安装:如何安装参照readme文件
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!