linux基础知识和命令

Linux历史
Linux是一套免费使用的类Unix操作系统
linux创始人:  林纳斯·托瓦茨

UNIX系统是一个多用户,多任务的分时操作系统。

vim   vim 是vi的改进版本
vi/vim是unix/linux中最基本,最常用,功能最强大的文本编辑器。
vi/vim有两种模式:
命令模式:键盘上所有输入的字符都当成命令(刚进入vim就是命令模式)
输入模式:键盘上所有输入的字符都当成文本内容

输入模式-->命令模式: Esc

命令模式-->输入模式
i:insert 进入输入模式后,光标不动
I:insert 进入输入模式后,光标会移动到本行的行首

o:open 向下开路。在光标的下一行,新开一行。
O:open 向上开路。在光标的上一行,新开一行。

a:append 追尾。进入输入模式后,光标向后移动一个字符。
A:append 追尾。进入输入模式后,光标移动到行尾。


vim的删除与修改命令
x:删除光标所在的字符
dd:delete删除光标所在的行,同时也有"剪切"的功能
ndd:  n表示一个数字,删除光标及以下的n行
r:replace 替换光标所在的单个字符
R:replace 替换光标及后面的多个字符(按Esc键退出替换)

vim退出命令
:q (quit)不保存退出(若修改了文件会询问是否保存)
:q! 不保存强制退出
:w (write)保存
:w filename 保存内容到指定的路径名filename(另存为)
:wq 保存并退出
:x  保存并退出

vim撤销命令
u: undo

vim拷贝和粘贴命令:
yy: yanked 把当前行的内容拷贝到剪贴板中去
nyy把光标及以下n行的内容粘贴到剪贴板中去
p: paste 将剪贴板中的内容贴在光标所在的行的后面
P: paste 将剪贴板中的内容贴在光标所在的行的前面

vim搜索命令
/pattern(模式)
eg:  /abc
n: 光标跳到下一个搜索结果
N:光标跳到上一个搜索结果

显示行号
:set nu
:set nonu 取消行号
:行号
    光标跳到指定的行
:$
光标跳到文件的最后一行

vim配置文件在主目录下   .vimrc
ls -a
vim .vimrc

Ctrl+z 挂起vim    fg命令返回

4.查看Linux说明手册(manual)
man  commandname/functionname   完整的手册
vim:  shift + K  查看光标所在函数的第一章手册
info commandname  额外的帮助文档

5,基本的系统维护命令
sync 同步,把缓冲区的数据写去文件。
shutdown  关机   shutdown -h 0(立即关机)
reboot  重启
passwd [username] 修改用户密码
su  username  切换用户
sudo -s  进入root用户
exit 退出用户或终端
clear 清屏
echo "string" 在标准输出上显示文字
date 输出当前的日期
``反撇号(~键),里面加一个命令,整体表示引用命令的输出结果
eg:
B=`date`
echo $B
TAB键: 自动补全命令
向上,向下方向键: 调出上一个/下一个命令

6,用户管理
/etc/passwd :用户信息文件
用户名:口令:用户ID(UID):用户组(GID):用户主目录:用户shell

/etc/group :用户组的信息文件,在Linux下面是分组来管理用户的
组名:口令:GID号:成员列表
                                            
这里组名是创建这个组的用户(组长)的名字
GID是创建这个组的用户(组长)的ID

adduser username //创建一个普通用户
userdel username //删除一个用户

7,进程管理   process
ps: process status 查看进程的状态信息
-e: every 每一个
-f: full 全部的
ps -ef: 查看每一个进程的全部信息

每个进程的信息都保存在一个文件目录中
/proc/$PID

top:以CPU占用率来实时排名进程
kill:杀死一个进程
kill -9  $PID

8,linux文件系统
linux文件系统的组织形式 :树状
绝对路径:以"/(根目录)"开头的路径,叫做绝对路径
相对路径:不以"/(根目录)"开头的路径,叫做相对路径
相对路径是以当前路径为参照的,系统查找文件本质上都是以绝对路径来查找的。
在查找相对路径时,是把当前目录路径和相对路径合为绝对路径再查找。
pwd:显示当前目录路径

cd : change directory
cd /目录名
在每个目录下面都会有两个特殊的隐藏的目录
.  :表示当前目录
.. :表示上一层目录
cd .. 返回上一层目录
cd -  返回上一次目录
./程序名   运行该程序

ls: list status 把某个文件(包含目录)的状态信息给列出来
ls  [options]  [文件名/目录]
options:
-a: all ,把所有的文件都列举出来。
在linux下以.开头的文件,视为隐藏文件
-l:把文件的详细信息给列举出来


eg:
-rwxrw-r--    1       gec      gec      40         Feb  16  19:40   test.txt
 硬链接数   用户    用户组   文件大小       最后修改时间    文件名

第一个字符表示文件类型:
- :普通文件(regular file),ASCII文本文件,二进制可执行文件 
d :directory 目录(文件夹)
b :block 块设备文件
c :char 字符设备文件
l :link符号链接文件,指向另外一个文件
P :pipe 管道文件
s :socket套接字文件

下面的九个字符rwx表示文件对不同情况下的权限
r:read 读的权限
w:write写的权限
x:excute可执行的权限,对目录可执行,表示可以进入目录

分三组:
user/group/other


chmod :change mode 改变文件的模式(权限)
chmod  权限  文件名
权限有两种指定方式:
(1)  u/g/o/a+/-  r/w/x
(2)  以八进制的形式表示权限位
0774

rm:remove 移除,删除
rm [options] DEST
DEST:要删除的目标文件,既可以是普通文件,也可以是目录
options:
-r :recursive(递归),若DEST是目录文件,必须要用递归删除
-f :force(强制)。非交互模式
交互模式:在正式删除前会询问用户是否确定要删除
非交互模式:不会询问直接删除

cp: copy
copy [options] SOURCE DEST
SOURCE:源文件。既可以是普通文件也可以是目录
DEST:目标文件。既可以是普通文件也可以是目录
options:
-r:recursive(递归)
-f:force(强制)。非交互模式

mv: move移动 (既可以移动普通文件,也可以移动目录)
mv SOURCE DEST
把SOURCE移动到DEST中去
eg: mv 1.txt ../
mv 1.txt 2.txt
把1.txt改名为2.txt

mkdir:make directory 创建一个目录
mkdir  目录名
-p:parent 创建目录时,如果父目录不存在,则一并创建

rmdir:remove directory 删除一个空目录

file:查看一个文件的格式。在UNIX里文件的扩展名不能决定文件的格式。

显示文本文件的内容
cat 把文本文件的内容全部一次性打印在终端
more 分屏显示一个文本文件的内容,按Enter一行一行显示,空格键一屏一屏的显示,q退出
less 分屏显示一个文本文件的内容,方向键上/下把内容前后滑动,q退出
head -num 显示文件的前num行
tail -num 显示文件的末尾num行

创建链接文件

硬链接    ln      target   link_name
软链接    ln  -s  target   link_name

文件的压缩和解压缩
文件的压缩实质上分为归档和压缩两个过程
归档文件:将一组文件或目录打包到一个文件中去
tar [options] tarfile  filelist
-c  create 创建一个归档文件
-f  file  指定归档文件的名字
-x  extract 释放一个归档文件

压缩文件:将一个文件进行压缩
压缩: gzip  xx  ==> xx.gz
解压  gunzip xx.gz ==>xx

压缩  bzip2 xx ==> xx.bz2
解压  bunzip2 xx.bz2 ==> xx

我们可以一步完成归档压缩这两个过程

tar [options] tarfile  filelist
-c create 创建一个归档文件
-f file 指定归档文件的名字
-v 显示归档或释放的过程信息
-x extract 释放一个归档文件
-z 由tar生成归档文件,然后由gzip压缩
-j 由tar生成归档文件,然后由bzip压缩

eg:
压缩:
tar -zcvf mp3.tar.gz  1.mp3 2.mp3 3.mp3
tar -jcvf mp3.tar.bz2 1.mp3 2.mp3 3.mp3
解压
tar -vxf mp3.tar.gz -C 目标目录
tar -vxf mp3.tar.bz2 -C 目标目录



你可能感兴趣的:(linux基础)