Linux基础知识与基础命令
Linux基础知识与基础命令
系统目录
Linux只有一个根目录,没有盘符的概念,文件目录是一个倒立的树形结构。
- 常用的目录功能
- bin 与程序相关的文件
- boot 与系统启动相关
- cdrom 与Linux的外设如光盘相关
- dev 与设备相关
- etc 与相关几乎所有服务器以及软件的配置相关文件
- lib 一些程序库
- home 使用最多的文件目录,是用户的文件所在目录,每一个用户有一个在home下的文件夹下
命令的基本使用格式
# 命令 -选项 参数1 参数2
command [-option] [parameter1] ....
常用命令
ls
列出当前目录下的文件- -l 以列表形式显示
- -a 显示隐藏的文件
- -h 显示文件大小
- dir 显示dir该目录下的文件
pwd
输出当前路径cat filename
查看文件内容,一次性输出more filename
查看文件,可以以分屏的形式touch filename
创建一个文件mkdir directoryname
创建一个文件夹目录- -p 可以创建多级目录
clear
清屏history
可以查看历史命令信息rm filename
删除文件命令rm dirname -r
递归删除文件夹rmdir dirname
删除空文件夹mv old new
可以用于重命名或者移动文件和文件夹cp filename/dirname dirname
复制文件或文件夹 -rln filename linkname
建立链接文件
相当于window下的快捷方式。Linux下的文件名和文件内容是分开存储的。默认是硬链接文件,区别是硬链接相当于文件的另一个名字,所以当删除原文件时,访问软连接就不能访问到文件内容,而银硬链接可以查看原文件内容。当文件上没有硬链接时,文件内容才会从内容中去除。在执行ll命令时,权限后面的就是文件的硬链接数。
- -s 创建软链接
find / -name "*name"
在根目录下按照名字来查找以name结尾的文件grep "str" file
文本搜索- -n 显示行号
- -v 搜索不包含 str 的内容
输入重定向命令
重定向:重新设定了方向
ls > xxx.txt
将 ls 输出的信息重新设定到 xxx.txt 中,覆盖文件ls >> xxx.txt
将 ls 输出的信息重新设定到 xxx.txt 中,追加文件
归档管理 tar
| 参数 | 含义 |
|---|---|
| -c | 生成档案文件,创建打包文件 |
| -v | 列出归档解档的详细过程,显示进度 |
| -f | 指定档案文件名称,f后面一定是.tar文件,所以必须放选项最后 |
| -t | 列出档案中包含的文件 |
| -x | 解开档案文件 |
一般使用 tar -cvf 打包后的文件名 需要打包的文件
一般使用 tar -xvf 需要解压的文件名
文件压缩解压:gzip
tar与gzip命令结合使用实现文件打包、压缩。 tar只负责打包文件,但不压缩,用gzip压缩tar打包后的文件,其扩展名一般用xxxx.tar.gz。
gzip使用格式如下:
gzip [选项] 被压缩文件
常用选项:
| 选项 | 含义 |
|---|---|
| -d | 解压 |
| -r | 压缩所有子目录 |
可以使用tar的以下命令来压缩和解压缩 .tar.gz 的文件
# 压缩
tar -zcvf xxx.tar.gz 需要压缩的文件 -C 压缩到指定的目录下
# 解压缩
tar -zxvf xxx.tar.gz -C 解压缩到指定的目录下
可以使用tar的以下命令来压缩和解压缩 .tar.bz2 的文件
# 压缩
tar -jcvf xxx.tar.bz2 需要压缩的文件
# 解压缩
tar -jxvf xxx.tar.bz2
系统管理命令
- 显示日历: cal
- 显示或设置时间: date
- 关机: shutdown / init 0
- 重启: reboot / init 6
- 显示磁盘使用情况: df -h
- 显示当前路径占用的空间: du -h
- 查看或配置网卡信息: ifconfig
- 查看进程信息: ps
进程是一个具有一定独立功能的程序,它是操作系统动态执行的基本单元。
ps命令可以查看进程的详细状况,常用选项(选项可以不加“-”)如下:
|选项|含义|
|--|--|
|-a|显示终端上的所有进程,包括其他用户的进程|
|-u|显示进程的详细状态|
|-x|显示没有控制终端的进程|
|-w|显示加宽,以便显示更多的信息|
|-r|只显示正在运行的进程|
```
# 显示所有运行的进程
ps -aux
top
htop
```
结束进程
```
kill -9 pid # 强制结束进程
```
用户相关命令
- 创建用户
sudo useradd usertest -m # 加上 -m 参数会在home下创建一个与用户名一致的目录
- 查看用户
cat /etc/passwd
- 设置用户密码
sudo passwd usertest
- 切换用户
su usertest
- 删除用户
userdel usernaem
- 切换到root用户
sudo -s
- 查看当前用户
whoami
- 查看登录了的用户
who
- 退出当前用户回到上一个用户下
exit
- 创建和删除用户组
groupadd groupname
groupdel groupname
- 查看所有用户组
cat /etc/group
- 为普通用户添加root权限
sudo usermod -a -G adm 用户名
sudo usermod -a -G sudo 用户名
- 修改文件所属用户
chown 用户名 文件名
- 修改文件所属组
chgrp 组名 文件名
权限相关
chmod u=rwx 文件名 # 文件所有者的权限
chmod g=rwx 文件名 # 文件所有组其他用户的权限
chmod o=rwx 文件名 # 其他用户的权限
chmod 777 文件名 # r-4 w-2 x-1
查看帮助文档
- command --help
- man command
可以查看 command 该命令的详细用法,使用 man 时会进入一个界面,使用上下键来查看浏览,按下 f 下一屏,按下 b 上一屏,按下 q 退出该界面。
Linux基础知识与基础命令的更多相关文章
- Shell编程(二)——shell的基础知识及常用命令
shell的基础知识 一.bash有以下特点: 1.记录命令历史 2.指令和文件名补全 3.别名 alias rm='rm -i' 4.通配符 * 0个或多个字符 ?匹配一个字符 5 输入输出重定向 ...
- day63:Linux:nginx基础知识&nginx基础模块
目录 1.nginx基础知识 1.1 什么是nginx 1.2 nginx应用场景 1.3 nginx组成结构 1.4 nginx安装部署 1.5 nginx目录结构 1.6 nginx配置文件 1. ...
- java线程基础知识----线程基础知识
不知道从什么时候开始,学习知识变成了一个短期记忆的过程,总是容易忘记自己当初学懂的知识(fuck!),不知道是自己没有经常使用还是当初理解的不够深入.今天准备再对java的线程进行一下系统的学习,希望 ...
- 这些C++基础知识的基础知识你都学会了吗?
一.C++基础知识 新的数据类型 C语言中的数据类型 C++中新的数据类型 思考:新的数据类型有什么好处?请看下面的代码: 可以见得:新的类型使整个程序更加简洁,程序变得易读易懂!这个就是bool ...
- Linux基础知识之—— nohup命令使程序在后台运行的方法
在linux操作系统中从后台一直运行某个程序的方法,就是使用nohup命令了. 参照网址:http://www.jb51.net/LINUXjishu/189964.html
- linux基础知识和常用命令
1.修改主机名 切换到root,然后执行 vim /etc/sysconfig/network,进入其中,更改hostname即可.insert进入修改,esc+:,wq保存退出. 2.用户切换 普通 ...
- MySQL基础知识和常用命令总结
说明:以下内容是阅读书籍<<MySQL必知必会>>的摘要和总结 检索数据 排序检索数据 过滤数据 使用通配符过滤 使用正则表达式进行搜索 创建计算字段 使用数据处理函数 汇总数 ...
- 基础知识、DOS命令
一.信息安全 1.信息源认证 https 访问控制 ACL :不能有非法软件驻留 :不能含有未授权的操作等 2.2017-OWASP-TOP5 注入 :失效的身份认证和回话配置 :跨 ...
- Git基础知识与常用命令
一:相关概念: 1:工作区(Working Directory): 就是你在电脑里能看到的目录 2:版本库(Repository): 工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库. ...
随机推荐
- Shell脚本 | 一键获取安卓应用活动名
上篇文章提到,启动时间的计算需要用到应用启动页的活动名(Activity_Name). 如何获取活动名呢?通常有如下几种方式: 1.询问 Dev 同事 2.adb logcat ActivityMan ...
- Spring Boot使用JWT实现系统登录验证
简介 什么是JWT(Json Web Token) jwt是为了在网络应用环境间传递声明而执行的一种基于json的开放标准.该token被设计紧凑且安全的,特别适用于SSO场景.jwt的声明一般被用来 ...
- java源码--HashMap扩容机制学习
待完成 Java中hash算法细述 https://blog.csdn.net/majinggogogo/article/details/80260400 java HashMap源码分析(JDK8) ...
- Linux QT 连接 Sqlite数据库
#include <QApplication> #include <QDebug> #include <QSqlQuery> #include <QSqlDa ...
- React Router基础教程
React是个技术栈,单单使用React很难构建复杂的Web应用程序,很多情况下我们需要引入其他相关的技术 React Router是React的路由库,保持相关页面部件与URL间的同步 下面就来简单 ...
- 在jQuery定义自己函数
刚才有学习<在jQuery定义自己的扩展方法函数>http://www.cnblogs.com/insus/p/3415312.html .现在想练习一下定义自定义函数.经重构之后,还是发 ...
- Jquery特殊属性
val():获取或设置元素的值,主要用于input. 参数:string 字符串 设置元素的值: 不写参数:获取元素的值: 其实这个属性 我们也可以用attr操作,但是没有这个方便 添加类 ...
- nehibernet .net注意事项
1:xml属性:嵌入资源建立实体对象:public virtual int id{get;set;}建立与实体对象同名的xml文件,以.hbm.xml为扩展名2:StructureMap.config ...
- [日常] Go语言圣经-Deferred函数
1.只需要在调用普通函数或方法前加上关键字defer,就完成了defer所需要的语法.当defer语句被执行时,跟在defer后面的函数会被延迟执行.直到包含该defer语句的函数执行完毕时,defe ...
- Weex 学习文档、跳转路径、控制台输出、we转js汇总
最近在学习阿里的weex框架,网上教程真是不少,但是有用的确实是少的很.其中大多数都是讲如何配置移动端的,很少有讲到weex语法的.要知道,如果真需要用weex编写js页面的话,很有可能是移动端开发者 ...