首页 > linux > Linux基础知识

Linux基础知识

作者:bin
目录
[隐藏]

写下学习Linux的点点滴滴

一、基本指令

1、文件

ls 显示当前目录文件
ls -l 显示目录详细文件list -list
ls -a 显示所有文件(包括隐藏文件)
ls -al 显示所有文件到详细信息
ls dirname 指定目录下的文件
cd dirname 打开文件夹
cd .. 上级目录
cd ~ 回到家目录
pwd 当前操作路径

2、用户

su -root 切换用户($:普通用户,#:root用户)
su 用户名 切换至普通用户

3、切换图形与命令界面

init 3 切换到命令界面
init 5 切换到图形界面

3、指令查找

`which ls 查看ls执行的文件`

二、文件操作(增,删,改,查)

1、mkdir 目录名字 创建目录

mkdir -p dir1/dir2/dir3 创建多个连续目录,dir1与dir2是父与子关系。

(mv是移动+更改文件,如果目标路径没有这个文件,就更改名字)
mv dir1 dir2 把dir1移动到dir2目录下
mv dir1/dir2 dir3/dir4 把dir1移动到dir4目录下
mv dir1/dir2 ./ dir2移动到当前目录

mv dir newdir 更改名称

cp file1 dir/file2 file1复制到dir下,并改名字为file2
cp -r dir1 dir2 (-r是recursive代表递归),复制目录时候使用-r代表递归复制其子目录

2、删除文件

rm -r dir 删除目录(使用-r递归删除目录结构)
rm file 删除file文件
rm -rf 递归强制删除文件,(-r是recursive代表递归)(-f,force),不管你是文件还是目录

3、查看文件

cat filename 打印文件内容至终端
more filename 通过回车方式逐行查看文件内容
q键退出查看
不支持回看
less filename 通过回车方式逐行查看文件内容
q键退出查看
不支持回看
head -n filename 从文件第几行开始查看
tall -n filename 查看文件末尾几行
wc filename 查看文件行数

4、创建文件

touch dir1/filename 创建文件
touch filename 创建文件

5、写文件

echo 内容 > filename 覆盖写的形式写入文件
文件不存在,创建文件
echo 内容 >>filename 追加内容

三、编辑器软件(vi)

1、编辑模式

按 i 键进入编辑模式 (文本前)
按 a 键进入编辑模式(文本后)
按 o 键新开一行进入编辑模式
按esc退出编辑模式

输入:q 退出编辑器(quit)

输入:wq 保存并退书(write)

输入:q! 不保存强制退出

内容查找

:/内容/ 或者 /内容 内容查找
按n键 下一个
按N键 上一个(将键盘切换到大写)

:数字 跳到第几行

:s/原内容/新内容/ 内容替换,替换第一个出现位置(当前行)
:s/原内容/新内容/g 替换整行出现到内容(当前行)
:%s/原内容/新内容/g 替换全文出现到内容(全文)

2、命令模式操作
1、文档查找、移动

按h(左)j(下)k(上)l(右) 可以代替键盘上下左右(字符级)
按w键 逐个单词移动光标到首字母(单词级)
按e键 逐个单词移动光标到尾字母(单词级)
按b键 移动到当前单词首字母(单词级)
按0键 移动到行首(行级)
按$键 移动到行尾(行级)
按{键 移动到段落首部(段落级)
按}键 移动到段落尾部(段落级)
按H键(大写) 移动到屏幕首部(屏幕级)
按L键(大写) 移动到屏幕尾部(屏幕级)
按G键(大写) 移动到文章末尾(文档级)
按1G键(依次按下) 移动到文章到第一行(文档级)
按nG键(依次按下) 移动到文章到第n行(文档级)

2、内容删除(类似剪切)

按dd键(按2下d) 删除当前行
按2dd键(依次按下) 删除当前行开始的2行
按ndd键(依次按下) 删除当前行开始的n行
按x键 删除光标所在的字符(字符级)CTRL-R(重做)来反转撤消的动作
按cw键(依次按下) 删除光标所在单词至结尾并进入编辑模式(单词级)

2、内容复制

按yy键(按2下d) 复制当前行
按2yy键(依次按下) 复制当前行开始的2行
按nyy键(依次按下) 复制当前行开始的n行
按p键 粘贴复制好的内容(删除的内容也可以粘贴)

3、快捷操作

按u键 撤销(undo,类似ctrl+z)
按J键 合并上下2行
按r键 修改光标所在的字符
按.键 重复执行上一个操作

4、寄存器
一、文本寄存

存入寄存器中,可以在不同文件中编辑。
复制 “f3Y f标识寄存器的名字,3表示3行,Y表示复制。
粘贴 “fp

二、命令寄存

qa
将接下来命令寄存在a中,再次按q结束记录。
@a
执行寄存的命令

5、窗口
一.窗口操作

:split 分割
:new 创建一个新窗口
:only 关闭其他窗口,只保留当前窗口
CTRL W 切换窗口
CTRL W +窗口变大
CTRL W -窗口变大

二.打开不同文件

vim -o one.txt two.txt three.txt
使用”-o”选项可以让Vim为每一个文件打开一个窗口

6、文本比较

文件未打开:
使用vimdiff file1 file2 对比2个文件的差异
文件已打开:
:vertical diffsplit file2 对比当前文件与file2的差异

7、文本替换

:%substitute/public/publii/
替换文本中所有的public 未publii

:2,30substitue/public/publii
替换2-30行

逐行替换(s为缩写)
:%s/public/public/c

8、文本排本

使用
100==
其中100为要排本的行数

四、权限管理

1、权限详情

drwxr-x— 2 adm 4096 2013-08-07 11:03 apache2

第一列 : “drwxr-x—” 表识文件的类型 和文件权限
分成3列看,1:当前用户,2:同组,3:其他组

第二列: “2”是纯数字 ,表示 文件硬链接个数

第三列 : “root” 表示文件的所有者

第四列:“adm” 表示为文件的所在群组

第五列:“4096”,表示为文件长度(大小)

第六列:“2013-08-07 11:03”,表示文件最后更新(修改)时间

第七列:“apache2” 表示文件的名称

2、权限更改
`u 当前用户 g同组用户 o其他组用户`
添加权限

chmod u+rx filename 添加 当前用户 读和执行
chmod -rx filename 添加 全部用户 读和执行
chmod -R -rx filename 添加 全部用户 读和执行(递归修改子目录)

3、删除权限

chmod g-rx filename 删除 同组用户 读和执行
chmod g-w filename 删除 同组用户 写
chmod -R g-w filename 删除 同组用户 写(递归修改子目录)

4、权限更改(数字绝对方式):

chmod abc filename 其中a代表主人,b代表同组,c代表其他组
实例:
chmod 753 filename 主人:读写执,同组:读执,其他:写执

5、创建用户

添加新的用户账号使用useradd命令,其语法如下:
代码:
useradd 选项 用户名
其中各选项含义如下:

代码:
-c comment 指定一段注释性描述。
-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
-g 用户组 指定用户所属的用户组。
-G 用户组,用户组 指定用户所属的附加组。
-s Shell文件 指定用户的登录Shell。
-u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。
groups username 查看用户是哪个组的

 

6、更改文件,文件夹权限 (所有子文件使用-R)

chown user1:group1 file1
把当前文件夹下的file1的所有者改为user1,所有者用户组改为group1

7、更改用户组

查看用户组的命令

指定用户 groups username

所有组 cat /etc/group

将用户移动到指定组

这里不推荐使用:这会是你离开其他组,仅仅是加入这个组

usermod -G groupname  username

推荐使用如下命令

usermod -a -G groupname username

五、任务调度指令,定时执行

1、打开任务表
`crontab -e 编辑任务表`
2、任务表格式
#分钟 小时 日期 月份 星期 被执行的指令
21 18 3 5 2 /root/test/out.sh

2、检测cron服务是否开启(ubuntu,其他linux为crond)
service cron status

六、linux小贴士

生产随机字符串

cat /proc/sys/kernel/random/uuid|cut -d “-” -f5|tr ‘[:lower:]’ ‘[:upper:]’

 

您必须 [ 登录 ] 才能发表留言!