本次知识点:Linux系统的多终端切换,linux下的用户,linux远程访问工具使用,linux下重要的目录,命令的组成,通配符,linux的路径问题,文件操做的综合运用php
1.不少人都说.net程序员只会在Windows的环境下进行工做,压根就不懂Linux的使用,也不懂Linux的命令,只会用鼠标,只会在图形界面下工做.其实刚开始听,内心挺不爽的,做为一个.net程序员,我所熟悉的固然是在windows下工做,由于咱们压根不须要在linux环境使用编码工具,并且不少php和java的程序,他们也仅仅是会一点点命令,就来鄙视咱们,说不懂linux,当时我内心是挺不爽的,大家接触得过,懂是固然的,不懂才怪,为了避免被鄙视,我也要接触linux,更要比他们更加熟悉。java
2.Linux时代的到来,随着微软开源.net,势必会把.net迁移到多个平台上,linux由于其免费开源的特征,不少公司将来将会把服务器的操做系统搭建为linux,而且会把.net平台迁移到该平台上,因此.net程序员学习linux是势在必行了,为了避免被时代抛弃,那么本身就必须进步,把linux看成工做的一部分,那么本身学习起来就不费劲了.linux
准备linux系统,我安装了VMware的虚拟机软件,傻瓜式的安装了CentOS6.7的操做系统,关于选择Linux系统版本的问题,我主要是看当前公司搭建服务器选择的linux版本,以及学习的成原本着想,最终选择了CentOS.程序员
所谓多终端,按个人理解,就是多个用户,不一样用户有不一样的环境,你们相互不影响.由于我安装的CentOS6.7,因此一进去就是图形界面.windows
CentOS共有6个终端,图形界面这里也是其中一个终端,对应为键盘中的F1,另外5个对应这F2~F6,都是控制台终端服务器
注意:若是从图形界面进入控制台终端,快捷键为:Ctrl+Alt+(F1~F2),若是从控制台进入其他终端,只须要按Alt+F1~F6,(我不知道是否是安装这个虚拟机的问题,才须要按Ctrl)网络
我不知道我这样理解准不许确,反正超级管理员都是root,密码就是安装时填上的密码,固然linux还有其余的用户,session
对于一名小白来讲...可能安装Linux后,进入了图形界面 ,在哪里敲命令都不知道....(我曾经就是...)我选择了快捷键Alt+F2进入终端,而后输入账号密码进入了系统,工具
使用secureCRT,能够在Window下远程链接Linux.下载下来以后,经过受权后(请使用正版=_=!),进入到界面中学习
在菜单栏-->File-->Quick Connet-->选择SSH2,填写Hostname(地址,不知道虚拟机IP的,在 linux下命令行ifconfig),UserName:root,--->点击Connect--->输入密码就能够了
最后出现界面
这里就至关于终端的控制台了,若是以为白底很差看,不像linux下的,那么能够点解session找到对应要链接的linux终端,右键properties,进入选项,在Terminal-->Emnulation -->下拉框选择Linux主题就变成linux的了,
把字体变大:Ctrl+鼠标滚轮
选择Send Protocol NO-OP 防止链接服务器的终端被清掉.
使用了远程管理工具后,就和在linux使用终端的命令行是同样的,因此以后都是直接用这个远程管理工具sucureCRT.
ls命令后,显示为蓝色的则为目录,显示为白色的为文件,绿色表明可执行文件,浅蓝色的表明符号连接
有不少重要的目录:
bin:有一堆命令
etc:里面存放的是一些重要的配置文件,linux一些配置的,什么网络环境都在这里存放
proc:虚拟目录,系统运行过程当中产生的一些文件,经过里面的内容了解系统内部状况,至关于系统开了一个窗口让你去看系统内一些内部信息
sbin:也是存放命令的,只是它是保存一些比较底层接近物理操做的命令,例如什么关机开机,修改系统时间等等,涉及到一些物理硬件的操做,可是须要的权限较高,
home:主工做目录, 至关于登陆者的一个基地,每一个用户都有本身的主工做目录,若是是root用户,则是在/根目录下的root文件中
每一个命令行的显示的组成:,若是是普通用户是$,root则是# 若是是在[图中标的当前所处目录]显示为~,则表示进入到当前主工做目录
使用man commond 就能够调出命令的手册,按F能够下一页,按B能够上一页,按Q能够退出命令手册
adduser username 添加新的用户
passwd username 修改用户密码
su username 使用username用户登陆终端
date 当期系统的日期
hwclock 硬盘的时钟
clear 清除屏幕上的信息
cal 日历
who 当前谁在线
uname 当前系统的信息
top 查看那当前启动的任务,系统动态的信息,能够监控系统的负荷
shutdown now 立刻关机,若是没有now则是等待全部用户logout才能被关掉
logout 退出当前的用户,可是不关机
pwd查看当前所在目录
----------如下命令对文件的操做----
echo content > directory/filename 表示若是打开fliename则输出content, ">"表明输出重定向,若是没有则直接在屏幕中输出content
touch filename 建立一个0字节的文件,若是touch一个已经存在的文件,那么就会改变这个文件最后的打开时间戳
chown newuser /directory/filename 更改文件的拥有者,就是ls -l看到的那个拥有者, 第三个参数须要带上路径
chgrp newuser /directory/filename 更改拥有者组
ls list列出当前打开目录的文件或者子目录
cat catalog 打开文件或者打开目录
rm remove 删除文件或者文件目录
mv move 移动目录或者改文件名
cp copy 复制文件
mkdir make directory 建立目录
cd change directory 改变当前目录
rmdir remove directory 删除目录
使用ls -l 列出详细目录或者以及其详细信息
*:表明在其所在位置上有0或以上任意个字符
?:表明在其位置上仅有一个任意字符
[]:在其位置上,有[]中任意的字符集 ,若是是连续的能够写成[1-9][a-z][a-zA-Z]
纯字母:例如,写成a?那么在第一个必须匹配a
全部文件都是从根目录/开始.
路径的表示有:相对路径 和 绝对路径 例子:相对路径:我要访问K---->cd /a/e/k 绝对路径:我当前处于g 但我要访问h ----> cd ../../d/h
做为一个程序员,你们也知道什么是绝对路径和相对路径的了,
先默认一下命名防止混乱: text表示内容,file开头的表示文件,directory开头的表示目录
建立一个文件: [root@localhost ~]# echo text > /root/filea --->表示在root目录下,建立一个filea文件,若是打开该文件,则会输出text
打开一个文件:[root@localhost ~]# cat filea-->由于如今已经处于root目录下,因此直接使用cat打开文件filea
返回主工做目录:直接输入cd 便可
更改文件名字: [root@localhost ~]# mv filea fileb --->使用mv更名 mv 动做 第一个参数:原文件名,能够带路径的 第二个参数,须要改的名字
复制一个文件:[root@localhost ~]# cp fileb filec ---->适用cp进行文件复制, cp动做 第一个参数:原文件的名字,能够带路径的 第二个参数,把原文件复制成 目录下的某个文件名
建立一个目录:[root@localhost ~]# mkdir directory1 ---->建立文件目录mkdir 直接在当前目录建立一个名为directory1的文件夹,若是要在其余路径建立那么就带上路径
移到一个文件到目录中:[root@localhost ~]# mv fileb directory1 ----->mv就是移动文件 , 若是第二参数参数是一个目录,那么就是移动到该目录下,若是不是目录,则是更名了
若是一个目录中不存在文件夹,如何建立:[root@localhost ~]# mkdir -p directory2/directory3 ----->directory2若是这个目录不存在,普通mkdir不带参数的,是不能建立的,若是带参数-p就能够建立了
删除文件:[root@localhost directory3]# rm file333 --->会提示 rm: remove regular file `file333'? 若是删除则填入Y ,不删除则N
修改文件rwx的权限:[root@localhost ~]# chmod a+x filec ---->使用chmod 命令 a+x 则是user,group,othor的权限都修改 a的含义就all x就是对应的可执行的权限,也能够是r或者w
[root@localhost ~]# chmod a-x filec ---->就是删除x的权限
[root@localhost ~]# chmod u+x filec ---->a换成了u就是针对user的权限了,分别对应首字母
硬连接,就是把一个子文件共享给另外的目录上: [root@localhost ~]# ln directory1/fileabc dirctory3 ---->把directory1中的fileabc文件连接给directory3,因此在3也能打开fileabc,至关于程序中高类聚,修改了fileabc,同时两个目录下读到的都是修改后的内容,至关于多个老爸,虽然修改的了以后,两个老爸都能共享到,可是其中一个老爸被删除了,可是另一个老爸仍是能够读到文件的信息,若是要删除的话,就只能两边都删除
建立一个连接指向别的目录或者文件:[root@localhost directory1]# ln -s ../directory2/directory3 link ----->ln -s 指向另一个目录或者文件,实现快速打开,只须要ls link 就测试link是否指向了不一样的目录
只是上了一些课程,对操做的总结,linux做为一个操做系统固然是博大精深拉,之后的路还长着,可是对于文件的管理已经有了一个基本的认识了.