Ctrl+Alt+(F1-F6):切换虚拟终端

Ctrl+Alt:鼠标切换界面

$:普通用户登录后系统的提示符

#:root用户登录后系统的提示符

Linux命令

exit  用于退出目前的shell

who  用于显示系统中有哪些使用者正在上面,显示的资料包含了使用者ID、使用的终端机、从哪边连上来的、上线时间、呆滞时间、CPU 使用量、动作等等

whoami  用于显示自身用户名称,本指令相当于执行"id -un"指令

date  用来显示或设定系统的日期与时间

clear  清屏(Ctrl+l)

su  用于变更为其他使用者的身份,除 root 外,需要键入该使用者的密码

例:su - root    #切换到root用户

cd  用于切换当前工作目录至 dirName(目录参数);其中 dirName 表示法可为绝对路径或相对路径。若目录名称省略,则变换至使用者的 home 目录 (也就是刚 login 时所在的目录);另外,"~" 也表示为 home 目录 的意思,"." 则是表示目前所在的目录,".." 则表示目前目录位置的上一层目录

例:cd /usr/bin/    #跳到 /usr/bin/

cd ~    #跳到自己的 home 目录

cd ../..    #跳到目前目录的上上两层

useradd  用于建立用户帐号;帐号建好之后,再用passwd设定帐号的密码.而可用userdel删除帐号;使用useradd指令所建立的帐号,实际上是保存在/etc/passwd文本文件中

passwd  用来更改使用者的密码

例:passwd pd    #设置pd用户的密码

usermod  用来修改用户帐号的各项设定

ls  用于显示指定工作目录下之内容(列出目前工作目录所含之文件及子目录)

语法:ls -al name

ls -i /pd.txt    #查看pd.txt的inode号

-a 显示所有文件及目录 (ls内定将文件名或目录名称开头为"."的视为隐藏档,不会列出)

-l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出

pwd 用于显示工作目录;执行pwd指令可立刻得知您目前所在的工作目录的绝

对路径名称

cp  主要用于复制文件或目录

mv  用来为文件或目录改名、或将文件或目录移入其它位置

例:mv aa bb    #将文件aa更名为bb

mv info/ logs    #将info目录放入logs目录中。注意,如果logs目录不存在,则该命令将info改名为logs

mkdir  用于建立名称为dirName之子目录

参数:-p 确保目录名称存在,不存在的就建一个

例:mkdir aa    #在工作目录下,建立一个名为aa的子目录

mkdir -p bb/Test    #在工作目录下的bb目录中,建立一个名为 Test 的子目录;若bb目录原本不存在,则建立一个;(注:本例若不加 -p,且原本bb目录不存在,则产生错误)

touch  用于修改文件或者目录的时间属性,包括存取时间和更改时间;若文件不存在,系统会建立一个新的文件;ls -l 可以显示档案的时间记录

例:touch text.txt    #新建text.txt

touch {1..9}.txt    #相当于9条命令,新建1.txt到9.txt

rm  用于删除一个文件或者目录

rm text.txt    #删除文件text.txt

rm -r homework    #删除目录homework

rm -r *    #删除当前目录下的所有文件及目录

#删除文件可以直接使用rm命令,若删除目录则必须配合选项"-r"

文件一旦通过rm命令删除,则无法恢复,所以必须格外小心地使用该命令

 

cat  用于连接文件并打印到标准输出设备上

例:cat text.txt    #查看text.txt里面的内容

head  指定显示头部内容的文件列表

例:head -n file    #显示file文件的前n行(不带-n默认显示10行)

tail  可用于查看文件的内容,有一个常用的参数 -f 常用于查阅正在改变的日志文件;tail -f file会把 file文件里的最尾部的内容显示在屏幕上,并且不断刷新,只要 file更新就可以看到最新的文件内容

例:tail -n file    #显示file文件的后n行(不带-n默认显示10行)

tail -f file    #跟踪名为file文件的增长情况

more  命令类似 cat ,不过会以一页一页的形式显示,更方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能(与 vi 相似),使用中的说明文件,请按 h

例:more +n file    #从第n行开始显示file文档内容

less  与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件

groupadd  用于创建一个新的工作组,新工作组的信息将被添加到系统文件中

groupmod  用于更改群组识别码或名称

[root@w3cschool.cc ~]# groupadd linuxso

[root@w3cschool.cc ~]# tail -1 /etc/group

linuxso:x:500:

[root@w3cschool.cc ~]# groupmod -n linux linuxso

[root@w3cschool.cc ~]# tail -1 /etc/group

linux:x:500:

chgrp  用于变更文件或目录的所属群组;在UNIX系统家族里,文件或目录权限的掌控以拥有者及所属群组来管理。您可以使用chgrp指令去变更文件与目录的所属群组,设置方式采用群组名称或群组识别码皆可

chown  Linux/Unix 是多人多工操作系统,所有的文件皆有拥有者;利用 chown 将指定文件的拥有者改为指定的用户或组,用户可以是用户名或者用户ID;组可以是组名或者组ID;文件是以空格分开的要改变权限的文件列表,支持通配符;一般来说,这个指令只有是由系统管理者(root)所使用,一般使用者没有权限可以改变别人的文件拥有者,也没有权限可以自己的文件拥有者改设为别人;只有系统管理者(root)才有这样的权限

说明:chown 属主.属组 参数    #改属主属组

chown 属主 参数    #只改属主

chown .属组 参数    #只改属组

chown -R属主.属组 text(text/aa/bb/)    #递归改text目录及目录下所有文件的属主属组(递归改bb目录及目录下所有文件的属主属组)

chmod  Linux/Unix 的文件调用权限分为三级 : 文件拥有者、群组、其他;利用 chmod 可以藉以控制文件如何被他人所调用

  1. u 表示该文件的拥有者,g 表示与该文件的拥有者属于同一个群体(group者,o 表示其他以外的人,a 表示这三者皆是
  2. r(4)表示可读取,w(2)表示可写入,x(1)表示可执行

例:chmod -R file    #对file目录下的所有与子目录进行相同的权限变更(即以递回的方式逐个变更)

chmod 777 file    #对file文件u、g、o的权限改为可读可写可执行

./  运行命令

Linux下可以用 ll 命令来判断文件类型,主要是根据每行的首个字符来判断:

例:ll -d tmp/aa/bb/cc/    #查看cc目录的权限信息(-d专门用来查看目录文件类型)

-rw-r--r--    #” - ”开头的都是普通文件

drw-r--r--    #” d ”开头的是目录文件

brw-r--r--    #” b ”开头的文件都是块设备文件

crw-r--r--    #” c ”开头的文件都是字符设备文件

srw-r--r--    #” s ”开头的文件都是socket文件

prw-r--r--    #” p “开头的文件都是管道文件

lrw-r--r--    #” l ”开头的文件都是软链接文件

>  左边的内容覆盖右边的内容

>>  左边的内容追加给右边的内容

wc  可以计算文件的Byte数、字数、或是列数,若不指定文件名称、或是所给予的文件名为"-",则wc指令会从标准输入设备读取数据

例:wc -l /etc/passwd    #显示passwd文件有多少行

tar  用来建立,还原备份文件的工具程序,它可以加入,解开备份文件内的文件

参数:-c或--create建立新的备份文件

-v或--verbose显示指令执行过程

-f<备份文件>或--file=<备份文件>指定备份文件

#查看test.tar文件里的内容

参数:-t或--list 列出备份文件的内容

#解开(不是解压)文件以及解开到opt目录下

gzip  是个使用广泛的压缩程序命令,文件经它压缩过后,其名称后面会多出".gz"的扩展名

gunzip  是个使用广泛的解压缩程序命令,它用于解开被gzip压缩过的文件,这些压缩文件预设最后的扩展名为".gz";事实上gunzip就是gzip的硬连接,因此不论是压缩或解压缩,都可通过gzip指令单独完成

bzip2  采用新的压缩演算法,压缩效果比传统的LZ77/LZ78压缩演算法来得好;若没有加上任何参数,bzip2压缩完文件后会产生.bz2的压缩文件,并删除原始的文件

参数:-v或--verbose压缩或解压缩文件时,显示详细的信息

bunzip2  可解压缩.bz2格式的压缩文件;bunzip2实际上是bzip2的符号连接,执行bunzip2与bzip2 -d的效果相同

Ctrl+a  光标移动到该跳命令首部

Ctrl+e  光标移动到该调命令尾部

Ctrl+c  取消当前命令

 

ps   用于显示当前进程 (process) 的状态

例:ps aux |grep “bash” |grep -v  “grep”

Kill  用于删除执行中的程序或工作

例:kill -9 123456    #强制杀死123456进程

vi/vim  所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在;但是目前我们使用比较多的是 vim 编辑器;vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计

 

vi、vim编辑器有三种模式:命令行模式、编辑模式、扩展模式

命令行模式:

a、i、o  进入编辑状态

u  复原上一步操作

dd  删除光标所在的那一行

ndd  n为数字,删除光标所在的向下n行;例如5dd则是删除5行

yy  复制所在光标的那一行

nyy  n为数字,复制光标所在的向下n行,例如5yy则是复制5行

p(小写)  将已复制的数据在光标下一行黏贴

P(大写)  将已复制的数据在光标上一行黏贴

ctrl+r  重做上一步操作

使用复制命令后np  n为数字,将已复制的数据在光标上/下一行黏贴n行

使用删除命令后按p  可以理解为剪切再粘贴

0  光标移动到该行的行首

$  光标移动到该行的行尾

G  光标移动到这个文件的最后一行

nG  n为数字,光标移动到这个文件的第n行;例如5G则是移动到第5行

gg  移动到这个文件的第一行,相当于1G

H  光标移动到这个屏幕的最上方那一行的第一个字符

M  光标移动到这个屏幕的中央那一行的第一个字符

L  光标移动到这个屏幕的最下方那一行的第一个字符

扩展模式:

Esc:wq!  w为保存  q为退出    !为强制

set nu  显示文件行号

Linux系统引导顺序:bios--->mbr--->grub--->kernel--->init

fdisk  是一个创建和维护分区表的程序,它兼容DOS类型的分区表、BSD或者SUN类型的磁盘列表

例:fdisk -l /dev/sda    #创建分区

mksf  用于在特定的分区上建立 linux 文件系统(格式化)

例:mkfs.ext4 /dev/sda4    #将sda4分区格式化为ext4格式

mount   用于挂载Linux系统外的文件

例:mount /dev/hda1 /mnt     #将 /dev/hda1 挂在 /mnt 之下

mount -o ro /dev/hda1 /mnt     #将 /dev/hda1 用唯读模式挂在 /mnt 之下

mount -o rw /dev/hda1 /mnt     #将 /dev/hda1 用可读写模式挂在 /mnt 之下

何为挂载?

在linux操作系统中,挂载是指将一个设备(通常是存储设备)挂接到一个已存在的目录上;我们要访问存储设备中的文件,必须将文件所在的分区挂载到一个已存在的目录上,然后通过访问这个目录来访问存储设备

umount  用于卸除文件系统;可卸除目前挂在Linux目录中的文件系统

df  用于显示目前在Linux系统上的文件系统的磁盘使用情况统计

du  用于显示目录或文件的大小;会显示指定的目录或文件所占用的磁盘空间

ln  为某一个文件在另外一个位置建立一个同步的链接;当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间

ln软链接:

格式:ln -s 源路径 目标路径

特点:1.相当于win中的快捷方式

2.删除链接文件,源文件无影响

3.删除源文件,链接文件失效

4.修改源文件/链接文件,内容都变

5.软链接是指向文件名的

软链接中:source.txt和dex.txt的inode号不同

ln硬链接:

格式:ln 源路径 目标路径

特点:1.删除链接文件,源文件无影响

2.删除源文件,链接文件无影响

3.修改源文件/链接文件,内容都改

4.硬链接执行inode号

硬链接中:a.txt和b.txt的inode号相同

软链接可以跨分区;硬链接中a.txt和new.txt的inode号可以一样,但是他们在不同分区中,导致不在同一个block块,所以硬链接不可以跨分区

用4段8位二进制数表示ip地址

172.16.122.204/16------->16为子网掩码

网络地址:172.16.0.0

主机地址:172.16.122.204

将ip地址中的网络位和主机位固定下来后,ip地址被分成了不同的几类:A类、B类、C类、D类、E类;这里展示前3类

特殊ip地址

ifconfig  用于显示或设置网络设备;可设置网络设备的状态,或是显示目前的设置

chkconfig  用于检查,设置系统的各种服务

rpm  用于管理套件

rpm -ivh package.rpm    #安装一个rpm包

rpm -qa    #显示系统中所有已经安装的rpm包

rpm -e package_name.rpm    #删除一个rpm包

yum  是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器;基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装;yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记

yum install package_name    #下载并安装一个rpm包

yum remove package_name    #删除一个rpm包

yum update package_name.rpm    #更新当前系统中所有安装的rpm包

yum update package_name    #更新一个rpm包

初遇Linux的更多相关文章

  1. Linux 驱动开发

    linux驱动开发总结(一) 基础性总结 1, linux驱动一般分为3大类: * 字符设备 * 块设备 * 网络设备 2, 开发环境构建: * 交叉工具链构建 * NFS和tftp服务器安装 3, ...

  2. Linux下多线程编程遇到的一些问题

    今天在学习了Linux的多线程编程的基础的知识点.于是就试着做了一个简单的Demo.本以为会得到预期的结果.不成想却遇到了意想不到的问题. 代码展示 我的C 代码很简单,就是一个简单的示例程序,如下: ...

  3. Linux 内核概述 - Linux Kernel

    Linux 内核学习笔记整理. Unix unix 已有40历史,但计算机科学家仍认为其是现存操作系统中最大和最优秀的系统,它已成为一种传奇的存在,历经时间的考验却依然声名不坠. 1973 年,在用 ...

  4. 死磕内存篇 --- JAVA进程和linux内存间的大小关系

    运行个JAVA 用sleep去hold住 package org.hjb.test; public class TestOnly { public static void main(String[] ...

  5. NodeJs在Linux下使用的各种问题

    环境:ubuntu16.04 ubuntu中安装NodeJs 通过apt-get命令安装后发现只能使用nodejs,而没有node命令 如果想避免这种情况请看下面连接的这种安装方式: 拓展见:Linu ...

  6. [linux]阿里云主机的免登陆安全SSH配置与思考

    公司服务器使用的第三方云端服务,即阿里云,而本地需要经常去登录到服务器做相应的配置工作,鉴于此,每次登录都要使用密码是比较烦躁的,本着极速思想,我们需要配置我们的免登陆. 一 理论概述 SSH介绍 S ...

  7. Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级

    Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 5.安装Database软件 5. ...

  8. Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作

    Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 1.实施前准备工作 1.1 服务器安装操 ...

  9. SQL Server on Linux 理由浅析

    SQL Server on Linux 理由浅析 今天的爆炸性新闻<SQL Server on Linux>基本上在各大科技媒体上刷屏了 大家看到这个新闻都觉得非常震精,而美股,今天微软开 ...

随机推荐

  1. E. Cyclic Components (DFS)(Codeforces Round #479 (Div. 3))

    #include <bits/stdc++.h> using namespace std; *1e5+; vector<int>p[maxn]; vector<int&g ...

  2. AVL树(自平衡二叉查找树)

    了解AVL树之前要先了解二叉查找树(BST),BST查找元素的时间复杂度平均是O(logN),最坏的情况是O(N),所有的元素都接在左子树(或者右子树)就相当于一串链表了.而AVL树会对子树过高的情况 ...

  3. mysql(MySQL客户端连接工具)

    在MySQL提供的工具中,DBA使用最频繁的莫过于mysql.这里的mysql不是指MySQL服务,也不是mysql数据库,而是连接数据库的客户端工具.类似于Oracle的sqlplus. 语法: m ...

  4. php 分析2

    a:link,a:visited,a:hover,a:active   1:解释 link:连接平常的状态 visited:连接被访问过之后 hover:鼠标放到连接上的时候 active:连接被按下 ...

  5. 排序算法(C语言+Python版)宝宝再也不怕面试官写排序算法了

    直接插入排序 过程: 1. 数据可分看成两个部分,前面的数据是有序的 2. 从后面的数据取出一个元素,插到前面有序数据的合适位置 从右端开始查找,到找到比此元素大的时候,则此元素向后移动,以空出多余的 ...

  6. 牛客网Java刷题知识点之同步方法和同步代码块的区别(用synchronized关键字修饰)

    不多说,直接上干货! 扩展博客 牛客网Java刷题知识点之多线程同步的实现方法有哪些 为何要使用同步?      java允许多线程并发控制,当多个线程同时操作一个可共享的资源变量时(如数据的增删改查 ...

  7. Hibernate save()、saveOrUpdate()、merge()的区别

    一. update 和 merge的区别 首先在执行更新操作的时候,两者都必须要有id update是直接执行update 语句,执行后状态为持久化状态 而merge则不一样: 1. 如果sessio ...

  8. 学习typescript(二)

    学习typescript(二) ts 与 js 交互 ts 调用 js module使用 分为两种情况: ts 调用自己写的 js ts 调用别人写的 js 也就通过 npm 安装的 第一种情况处理如 ...

  9. 极简的css浮动窗口

    <!doctype html> <html> <head> <meta charset="utf-8"> <meta http ...

  10. okhttputils使用(zhuan)

    OkHttpUtils 封装了okhttp的网络框架,支持大文件上传下载,上传进度回调,下载进度回调,表单上传(多文件和多参数一起上传),链式调用,可以自定义返回对象,支持Https和自签名证书,支持 ...