Net程序员学习Linux
2016-03-21 00:19
696 查看
Net程序员学习Linux
本次知识点:Linux系统的多终端切换,linux下的用户,linux远程访问工具使用,linux下重要的目录,命令的组成,通配符,linux的路径问题,文件操作的综合运用为什么学习linux?
1.很多人都说.net程序员只会在Windows的环境下进行工作,压根就不懂Linux的使用,也不懂Linux的命令,只会用鼠标,只会在图形界面下工作.其实刚开始听,心里挺不爽的,作为一个.net程序员,我所熟悉的当然是在windows下工作,因为我们压根不需要在linux环境使用编码工具,而且很多php和java的程序,他们也仅仅是会一点点命令,就来鄙视我们,说不懂linux,当时我心里是挺不爽的,你们接触得过,懂是当然的,不懂才怪,为了不被鄙视,我也要接触linux,更要比他们更加熟悉。2.Linux时代的到来,随着微软开源.net,势必会把.net迁移到多个平台上,linux因为其免费开源的特征,很多公司未来将会把服务器的操作系统搭建为linux,并且会把.net平台迁移到该平台上,所以.net程序员学习linux是势在必行了,为了不被时代抛弃,那么自己就必须进步,把linux当作工作的一部分,那么自己学习起来就不费劲了.
开始学习linux
准备linux系统,我安装了VMware的虚拟机软件,傻瓜式的安装了CentOS6.7的操作系统,关于选择Linux系统版本的问题,我主要是看当前公司搭建服务器选择的linux版本,以及学习的成本来着想,最终选择了CentOS.Linux系统的多终端与切换
所谓多终端,按我的理解,就是多个用户,不同用户有不同的环境,大家相互不影响.因为我安装的CentOS6.7,所以一进去就是图形界面.CentOS共有6个终端,图形界面这里也是其中一个终端,对应为键盘中的F1,另外5个对应这F2~F6,都是控制台终端
注意:如果从图形界面进入控制台终端,快捷键为:Ctrl+Alt+(F1~F2),如果从控制台进入其余终端,只需要按Alt+F1~F6,(我不知道是不是安装这个虚拟机的问题,才需要按Ctrl)
Linux终端的帐号密码
我不知道我这样理解准不准确,反正超级管理员都是root,密码就是安装时填上的密码,当然linux还有其他的用户,Linux如何使用命令(小白专用)
对于一名小白来说...可能安装Linux后,进入了图形界面 ,在哪里敲命令都不知道....(我曾经就是...)我选择了快捷键Alt+F2进入终端,然后输入帐号密码进入了系统,使用工具远程连接Linux系统
使用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.
Linux重要目录
ls命令后,显示为蓝色的则为目录,显示为白色的为文件,绿色代表可执行文件,浅蓝色的代表符号链接有很多重要的目录:
bin:有一堆命令
etc:里面存放的是一些重要的配置文件,linux一些配置的,什么网络环境都在这里存放
proc:虚拟目录,系统运行过程中产生的一些文件,通过里面的内容了解系统内部情况,相当于系统开了一个窗口让你去看系统内一些内部信息
sbin:也是存放命令的,只是它是保存一些比较底层接近物理操作的命令,例如什么关机开机,修改系统时间等等,涉及到一些物理硬件的操作,但是需要的权限较高,
home:主工作目录, 相当于登录者的一个基地,每个用户都有自己的主工作目录,如果是root用户,则是在/根目录下的root文件中
命令的组成
每个命令行的显示的组成:,如果是普通用户是$,root则是# 如果是在[图中标的当前所处目录]显示为~,则表示进入到当前主工作目录
查看命令使用手册
使用man commond 就可以调出命令的手册,按F可以下一页,按B可以上一页,按Q可以退出命令手册linux基本命令(以后每节都会持续更新)
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
Linux下的文件目录与路径
所有文件都是从根目录/开始.
路径的表示有:相对路径 和 绝对路径 例子:相对路径:我要访问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作为一个操作系统当然是博大精深拉,以后的路还长着,但是对于文件的管理已经有了一个基本的认识了.
标签: .Net程序员Linux之路
相关文章推荐
- 几个用来了解Linux系统的性能概况的Linux命令
- linux zip/unzip命令详解+实例
- CENTOS7安装Elasticsearch
- linux/man/section
- Linux安装BerkeleyDB 5.3
- Linux文本处理三剑客之sed
- Linux文本处理三剑客之sed
- Linux文本处理三剑客之sed
- centos7+mono4.2.3.4+jexus5.8.1跨平台起飞
- 相识Linux
- linux设备驱动归纳总结
- 开始用linux打代码
- linux 线程互斥同步By信号量
- Linux基础--软件包管理
- 《LINUX内核设计与实现》第五章学习总结
- 使用BusyBox制作Linux根文件系统
- kali2.0linux折腾记
- linux里 什么叫用户组?
- Linux内核分析四:系统调用
- CentOS下yum安装MySQL