VIM常用命令

gg   //到第一行

(N)G   //到第n行(N为整数)

G    //到最后一行

0    //到行头

$  //到行尾

(N)dd  //删除N行,并将内容保存到粘贴板

p  //将粘贴板中内容复制到当前位置

u  //撤销操作

ctrl+r  //恢复撤销的操作

ESC+ :q!    // 退出不保存

ESC+ :qa!    // 强行退出所有正在编辑的文件

ESC+ :wq  //保存修改后退出

:set nu  //设置行号

:

:set nonu   //取消行号

查看linux内核版本等信息

vmware-hgfsclient   //查看物理主机和虚拟机共享的盘

vmhgfs-fuse .host:/F  /mnt/hgfs    //将物理磁盘F 挂载到linux的/mnt/hgfs目录下

KALI安装搜狗拼音输入法(曾经困扰过我很久)

1、卸载ibus及其所有组件
2、更新源:apt-get update
3、下载小企鹅输入法框架下的一些依赖组件:

apt-get install fcitx-libs  fcitx-libs-qt  fcitx-bin  fcitx-data fcitx-modules  fcitx-module-dbus  fcitx-module-kimpanel  fcitx-module-lua  fcitx-module-x11  fcitx  fcitx-tools  fcitx-ui-classic  fcitx-libs-gclient

4.安装fcitx图形化界面:

apt-get install fcitx-config-gtk2 fcitx-config-gtk3

5、到搜狗输入法官网下载对应版本的安装包,官网下载地址:http://pinyin.sogou.com/linux/?r=pinyin,如果系统是64位则下载的是sogoupinyin_2.1.0.0086_amd64.deb

6、使用dpkg -i 安装:

dpkg -i sogoupinyin_2.1.0.0086_amd64.deb

7、如果有报错,使用apt-get -f install进行依赖包的安装,然后在执行步骤六进行安装。
8、安装成功后重启,Ctrl+空格可以切换输入法。

linux的一些系统知识

目录结构

linux三级目录:根目录,一级目录,二级目录

根目录下的bin,sbin

usr下 的bin,sbin     这四个目录都用来保存系统命令

bin内命令可由root和普通用户执行

sbin下命令只能由root用户执行

boot //启动目录

etc  //系统默认配置文件

所有存储设备都要挂载后才能在linux上使用

proc     //直接写入内存

sys     //两个目录不能直接操作,这两个目录保存的是内存的挂载点

root相关信息记录在 /etc/passwd

个人密码记录在 /etc/shadow

linux组名记录在 /etc/group

chgrp adm 1.sh //改变文件的属主为adm 前提是 被改变后的组名必须在/etc/group档案内存在

chown bin 1.sh //改变文件的拥有者为bin  前提是  被改变后的用户名必须在/etc/passwd中存在

chown admin:bin  1.sh //同时改变所有者和属主

chown -R root:bin 1.sh //递归改变档案或者目录发所有者和属组

硬链接

(一个教室两个门,类似于只指向同一个 分区表(每一行包括inode,文件时间,存储位置等信息)即每一行都包括一个档案信息 的指针) 比较隐蔽不易发现

1.拥有相同i节点和存储block块,可以看做同一个文件

2.可通过i节点识别

3.不能跨分区

4.不能针对目录使用

5.删除原文件,硬链接依旧能显示原来的内容

ln   /root/1.sh  /tmp/2.sh

ls   -l   /root/1.sh  //查看档案的i节点

软链接

ln     -s   /root/1.sh  /tmp/2.sh

1.等于windows的快捷方式

2.软链接拥有自己的I节点和Block块,但是数据块中只保存原文件的文件名和I节点号,并没有实际的文件数据

sb为原文件  csb为软链接

3.lrwxrwxrwx   文件属性l中代表软链接 软链接文件权限都为777

4.删除原文件,软链接无法使用

5.软链接一定要写绝对路径,否则软链接后的文件只会在当前目录下查找

ln  -s   1.sh   /tmp/   //会报错

ln  -s   /root/Desktop/1.sh  /tmp    //需要写绝对路径

 基本命令

linux系统下压缩和解压缩命令

1.zip压缩

压缩文件

格式: zip 压缩之后的文件名  被压缩的原文件

压缩目录

格式:zip  -r  压缩文件名  被压缩的目录

解压缩 unzip  movie.zip  (解压缩文件和目录都是)

2.gz

gzip  源文件   //压缩为.gz格式的压缩文件,源文件会消失

gzip  -r  目录   //压缩目录下所有子文件,但是不能压缩目录

解压缩

gzip  -d 需要解压文件

gunzip 需要解压的文件

gunzip  -r  需要解压的目录

3.bz2(不能压缩目录)

bzip2  要压缩的文件     //压缩为.bz2格式,不保留源文件

bzip2 -k 源文件         //压缩之后保留源文件

解压

bzip2  -d   需解压的文件   //-k保留压缩的文件

bunzip2     需解压的文件    //-k 保留压缩的文件

4.打包和解打包命令

 

.tar.gz的压缩格式

压缩多个文件 tar   -zcvf  /tmp/test.tar.gz   jp  abc.cfg

//将jp和abc.cfg两个文件同时压缩到指定目录

tar  -ztvf  test.tar.gz  //查看压缩包 不解压

压缩

tar   -jcvf  压缩包名.tar.bz2  源文件

-j   压缩为.tar.bz2格式 (包括了将目录打包的过程)

解压缩

tar  -jxvf  压缩包名.tar.bz2

-x 解压缩.tar.bz2格式

tar  -jxvf  1.movie.tar.bz2   -C   /tmp

//指定解压缩位置

GREP命令(在每个 FILE 或是标准输入中查找 PATTERN)

'^#'      ^代表行首 #代表行尾  整体代表空行
dmesg | grep -n --color=auto -A3 -B2 'eth'
// -n 显示行号 将grep挑选出的关键字颜色标出 显示-A3关键字后3行 -B2显示关键字前2行 搜索含有关键字'eth'的行 grep -n 'the' grep2.txt
//显示含有the的行 grep -n -v 'the' grep2.txt
//显示不含有the的行 grep -n -i 'the' grep2.txt
//显示含有 the(大小写都包括)的行 grep -n 't[ae]st' grep2.txt
//显示含有 tast 或则test的行 grep -n '[^g]oo' grep2.txt
//显示oo前面不含g的 grep -n '[^a-zA-Z]ww' grep2.txt
//显示ww前面不含字母的 grep -n '0-9' grep2.txt
//显示含有数字的一行 grep -n '^the' grep2.txt
//显示行首含有the的行 grep -n '^a-z' grep2.txt
//显示行首小写字母开头 grep -n '^[^a-zA-Z]' grep2.txt
//显示行首不要是字母开头 cat /etc/fstab | grep -n '^[^#]'
//显示不要注释的行[^#]代表行首是注释 '^ '中的^表示不是 grep -n '\.$' grep2.txt
//显示行尾以 . 结尾的行 grep -n '^$' grep2.txt
//显示空行 grep -n -v '^$' grep2.txt | grep -v '^#'
//输出结果不包含空白行和注释行 grep -n 'g.*g' grep2.txt
//输出显示g.....g的行 *表示显示0到无数个前面的一个字符 egrep -n 'go+d' grep.txt
//god good gooood +重复一个或一个以上字符 egrep -n 'go?d' grep.txt
//god gd 重复一个或0个字符 egrep -n 'gd|good' grep.txt
// gd或good cat sed.txt | sed '2,5d'
//删除2到5行 cat sed.txt | sed '2a drink tea'
//在第2行之后加上 drink tea cat sed.txt | sed '2i drink tea'
//在第2行之前加上 drink tea cat sed.txt | sed'2,5c line2 to 5 has been replacd'
//将第2行到第5行内容用line2 to 5 has been replacd取代 cat sed.txt | sed -n '5,7p'
//仅列出第5行到第7行的内容 printf '%s\t %s\t %s\t %s\t %s\t \n' $(cat grep.txt)
// %s不固定字符串,字符串间用tab分隔符处理 awk字段处理
cat grep.txt | awk '{print $1 "\t" $3}'
//截取grep.txt的第一列和第三列变量并用制表符隔开 cat /etc/passwd | awk '{FS=":"}$3<10{print $1 "\t" $3}'
//以冒号 ":" 作为字段分隔 截取满足第三个变量小于10的条件的行 输出第一个和第三个变量并用制表符隔开

chmod改变档案权限命令

 chmod   .sh   //  -rwxrwx---
chmod u=rwx,g=rwx,a=--- .sh
chmod u+w .sh //给1.sh 所有者增加修改权限
chmod g-w .sh //给1.sh 属组去除修改权限
chmod u+w,g+x //给1.sh 所有者增加修改权限 给属主增加执行权限
chmod a+w .sh //给所有身份增加修改权限 mkdir -p /home/bird/testing/test1
rmdir -p /home/bird/testing/test1 //只能删除空目录
rm -r /home //递归删除目录
cp -s bashrc bashrc_slink // -s符号链接
cp -l bashrc bahsrc_slink //-l 实体链接
mv bashrc mvtest //重命名
mv bashrc1 bashrc2 mvtest2 //同时复制两个档案到mvtest2目录下
more //查看 /字符串 只能向下搜寻字符串
less // /字符串 向下搜寻字符串 ?字符串 向上搜寻字符串
ls -l /etc/man.config //modification time内容数据变更时时间更新
ls -l --time=ctime /etc/man.config //status time 权限属性变更时时间更新(目前时间)
ls -l --time=atime /etc/man.config //access time 内容被读取时时间更新
touch //建立空档案 更改已经建立档案时间(modificaiton time) 新建的档案预设权限666(无执行权限 因为档案不需要执行)
新建的目录预设权限777
umask //新建一档案或者目录默认扣掉的分值
所以默认新建档案是444 -rw-r--r-- 新建默认目录是755 drwxr-xr-x
umask //设置拿掉的是档案和目录的其他人的write权限
有助于文档安全
chattr +i NAU1
//chattr修改隐藏属性 不能被写入和删除,不能改名,设定链接
chattr -i NAU1
//去除隐藏属性
chattr +a NAU1
//档案只能增加数据 不能删除也不能修改数据
lsattr //查询隐藏属性 SUID权限
• SUID 权限仅对二迚制程序(binary program)有效;
• 执行者对亍该程序需要具有 x 癿可执行权限;
• 本权限仅在执行该程序癿过程中有效 (run-time);
• 执行者将具有该程序拥有者 (owner) 癿权限。 -rwsr-xr-x root root 2月 : passwd
s特殊权限可让群组暂时获得所有者所拥有的所有权限 所以可以写 file NAU3 //查看档案格式
t@kali:~/Desktop# file NAU3
NAU3: HTML document, ASCII text

常用的其他命令

 which  -a  命令
//从PATH目录寻找所有可以找到的指令 whereis
//从档案数据库中查找指定指令 很快
-b 只找binary格式文件
-m 只找出跟指令有关的man说明文件 locate -i iPconfig
//搜寻已建立的数据库/var/lib/mlocate/(每天默认更新1次)里面的数据所能搜索到的
updatedb //可先更新数据库再locate查找命令
Locate后接的命令可不分大小写 并且所有包含命令的路径完整名称都会显示出来 find . -size +50k -a -size -60k //查找当前目录下大于50k而且小于60k的文件
find . -size +50k -a ! -size -60k //查找当前目录下大于50k且不小于60k的文件
find . -size -50k -o -size +60k
//查找当前目录下小于50k或则大于60k的文件
• /dev/sd[a-p][-]:为SCSI, SATA, USB, Flash随身碟等接口癿磁盘文件名 • /dev/hd[a-d][-]:为 IDE 接口癿磁盘文件名 扇区为最小物理存储单位 512字节
第一个扇区很重要:包括
.MBR(master boot record),主要开机区占446字节
.分割表(partition table),占64字节。 ctrl+L //清屏
/dev/ //硬件设备文件
ls -l //longlist详细信息显示
ls -l -h //人性化显示参数 KB
ls -a //显示隐藏文件(系统文件)
ls -l /etc //显示指定文件目录下的属性
ls -ld /etc/ //显示指定文件本身属性
ls -l 指定文件目录
ls -i //显示文件id号(每个文件都有一个id号,系统也是根据其选择)
-rw-r--r-- //文件格式用十位显示,能识别7种
常见三种文件类型(第一位显示)
- 普通文件
d 目录文件
l 软链接文件 剩下10位
rw- r-- r--
u所有者 g所属组 o其他人
r读 w写 x执行 mkdir -p japan/canglaoshi
//递归建立目录 cd ~ //进入家目录
cd //进入家目录
cd - //进入上次目录
cd .. //进入上层目录

 cut命令

cut 命令(针对行信息的选取命令)

-b 提取一行里的第几个字节byte  (一个英文和数字占一个字节,一个汉字占两个字节)

who查看当前已登陆用户信息
[rocrocket@rocrocket programming]$ who
rocrocket : -- :
rocrocket pts/ -- : (:0.0)
rocrocket pts/ -- : (:0.0) 如果我们想提取每一行的第3个字节,就这样:
[rocrocket@rocrocket programming]$ who|cut -b
c
c
c

切勿汉字依旧设置
-b ,汉字占两个字节如此设置会出现乱码 -c提取一行行里的第几个字符 (不是字符串) 下面例子你似曾相识,提取第3,第4,第5和第8个字符:
[rocrocket@rocrocket programming]$ who|cut -c -,
croe
croe
croe -d设置间隔符,-f设置要提取的域 (下面间隔符设置为:)
[rocrocket@rocrocket programming]$ cat /etc/passwd|head -n
root:x:::root:/root:/bin/bash
bin:x:::bin:/bin:/sbin/nologin
daemon:x:::daemon:/sbin:/sbin/nologin
adm:x:::adm:/var/adm:/sbin/nologin
lp:x:::lp:/var/spool/lpd:/sbin/nologin [rocrocket@rocrocket programming]$ cat /etc/passwd|head -n |cut -d : -f
root
bin
daemon
adm
lp 设置间隔符为空格或者制表符,两个单引号之间需要空格
[rocrocket@rocrocket programming]$ cat tab_space.txt
this is tab finish.
this is several space finish
[rocrocket@rocrocket programming]$ cat tab_space.txt |cut -d ' ' -f
this
this

 查看硬件时钟和软件时钟

linux操作系统使用中的一些总结的更多相关文章

  1. linux 操作系统下c语言编程入门

    2)Linux程序设计入门--进程介绍 3)Linux程序设计入门--文件操作 4)Linux程序设计入门--时间概念 5)Linux程序设计入门--信号处理 6)Linux程序设计入门--消息管理  ...

  2. 利用putty软件连接虚拟机中linux操作系统

    http://jingyan.baidu.com/article/9c69d48fbefe6613c8024e6a.html 大家在使用虚拟的过程中有时候会感觉切换操作系统很不方便,那么有什么方法可以 ...

  3. Linux操作系统--定时任务

    最近在学习Linux操作系统.学到了关于定时任务的章节,作为一个总结写下这篇文章.在Linux中,我们可以将耗时大的任务如复制大文件,压缩.解压缩大文件等放进定时任务中(深夜执行,因为工作时间访问量大 ...

  4. 全方位剖析 Linux 操作系统,太全了!!!

    Linux 简介 UNIX 是一个交互式系统,用于同时处理多进程和多用户同时在线.为什么要说 UNIX,那是因为 Linux 是由 UNIX 发展而来的,UNIX 是由程序员设计,它的主要服务对象也是 ...

  5. Linux操作系统备份之三:通过二进制拷贝(dd)方式实现Linux操作系统数据的备份

    前面有两篇文章,<Linux操作系统备份之一:使用LVM快照实现Linux操作系统数据的在线备份>和<Linux操作系统备份之二:通过tar拷贝分区实现Linux操作数据的在线备份& ...

  6. Linux操作系统备份之二:通过tar拷贝分区实现Linux操作数据的在线备份

    http://www.tektea.com/archives/2163.html. 在<Linux操作系统备份之一:使用LVM快照实现Linux操作系统数据的在线备份>文章中,我们介绍了使 ...

  7. 安装linux操作系统

    安装双操作系统; 1 0. 介绍: 1 1 实验环境: 2 2. 实验准备: 2 3.开始安装: 2 1 制作U盘启动工具: 2 2.安装LinuxOS. 3 2.1在windowOS中划分60G空间 ...

  8. 在Linux操作系统下备份恢复技术的应用 转自https://yq.aliyun.com/articles/50205?spm=5176.100239.blogcont24250.9.CfBYE9

    摘要: 安全防护:在Linux操作系统下备份恢复技术的应用  原文参见:http://linux.chinaunix.net/techdoc/system/2005/12/19/925898.shtm ...

  9. 献给初学者:谈谈如何学习Linux操作系统

    本文出自 “技术成就梦想” 博客,请务必保留此出处http://ixdba.blog.51cto.com/2895551/569329. 为了能把这篇不错的文章分享给大家.所以请允许我暂时用原创的形式 ...

随机推荐

  1. 禁止右键,Ctrl+A,Ctrl+C,Ctrl+V来禁止复制内容,IE网页另存可禁止,但对火狐浏览器没有用的

    禁止右键,Ctrl+A,Ctrl+C,Ctrl+V来禁止复制内容,IE网页另存可禁止,但对火狐浏览器没有用的. 代码如下:(开发了左键选择,方便阅读)<!DOCTYPE HTML PUBLIC ...

  2. Ubuntu下安装配置和卸载Tomcat

    转载自:http://zyjustin9.iteye.com/blog/2177291 注:此处不采用apt-get安装,因为这种方式安装后,tomcat安装目录会到处都是,像天女散花一样.此处采取下 ...

  3. 转: Genymotion使用及离线镜像的安装

    Genymotion是一套完整的工具,它提供了Android虚拟环境.由于它比Android自带的模拟器要流畅好多,所以它简直就是开发者.测试人员.推销者甚至是游戏玩家的福音.支持Windows.Li ...

  4. inotify+rsync

    backup_to_rsync.sh #!/bin/bash #source function library . /etc/init.d/functions rsync_host=rsync.eti ...

  5. android Webview 实现js调用java代码实现Activity跳转

    今天有了一个需求,在android里webview加载的html页面,要求点击html页面的按钮实现Activity的跳转. 咱是是菜鸟,webview的接触不多,于是就和度娘来了次亲密接触.在其中也 ...

  6. Weka学习之关联规则分析

    步骤: (一) 选择数据源 (二)选择要分析的字段 (三)选择需要的关联规则算法 (四)点击start运行 (五) 分析结果 算法选择: Apriori算法参数含义 1.car:如果设为真,则会挖掘类 ...

  7. 【PHP】富文本HTML过滤器:HTMLPurifier使用教程(防止XSS)

    在编程开发时安全问题是及其重要的,对于用户提交的数据要进行过滤,XSS就是需要重视的一点,先说一下什么是XSS,简单来说就是用户提交数据(例如发 表评论,发表日志)时往Web页面里插入恶意javasc ...

  8. linux下LAMP环境搭建

    ++++++++++++++++++++++++++++++++++++++++++++++ linux下LAMP环境搭建 ++++++++++++++++++++++++++++++++++++++ ...

  9. android greendao3.0 多表关联关系讲解(转)

    转自:http://www.jianshu.com/p/dbec25bd575f 前言 之前用过数据库框架:realm.kjdb,今天准备实践学习一下greendao 3.0.greendao 3.0 ...

  10. Call to static DateFormat

    Bug: Call to method of static java.text.DateFormatPattern id: STCAL_INVOKE_ON_STATIC_DATE_FORMAT_INS ...