Linux 文件系统操作与磁盘管理
Linux 文件系统操作与磁盘管理
基本操作使用 df 命令查看磁盘的容量12$ df$ df -h
使用 du 命令查看目录的容量123456789101112# 默认同样以 blocks 的大小展示$ du # 加上`-h`参数,以更易读的方式展示$ du -h# 只查看1级目录的信息$ du -h -d 0 ~# 查看2级$ du -h -d 1 ~du -h #同--human-readable 以K,M,G为单位,提高信息的可读性。du -a #同--all 显示目录中所有文件的大小。du -s #同--summarize 仅显示总计,只列出最后加总的值。
简单的磁盘管理dd 命令简介dd命令从标准输入读入用户输入到标准输出或者一个文件
12345678910# 输出到文件$ dd of=test bs=10 count=1 # 或者 dd if=/dev/stdin of=test bs=10 count=1# 输出到标准输出$ dd if=/de ...
Linux 环境变量与文件查找
Linux 环境变量设置和文件查找操作
环境变量创建变量和读取变量的值123$ declare tmp$ declare tmp$ echo $tmp
环境变量设置123.profile 可以用 ls -a 查看cd /home/shiyanlouls -a
.profile 只对当前用户永久生效。而写在 /etc/profile 里面的是对所有用户永久生效,所以如果想要添加一个永久生效的环境变量,只需要打开 /etc/profile,在最后加上你想添加的环境变量就好啦。
文件添加可执行权限1$ chmod 755 hello_shell.sh
gcc 编译1$ gcc -o hello_world hello_world.c
添加自定义路径到“ PATH ”环境变量12345$ PATH=$PATH:/home/shiyanlou/mybin # 注意这里一定要使用绝对路径。$ echo "PATH=$PATH:/home/shiyanlou/mybin" & ...
Linux 用户及文件权限管理
添加删除用户,添加用户到 sudo 组,修改文件权限。
Linux 用户管理通过第一节课程的学习,你应该已经知道,Linux 是一个可以实现多用户登陆的操作系统,比如“李雷”和“韩梅梅”都可以同时登陆同一台主机,他们共享一些主机的资源,但他们也分别有自己的用户空间,用于存放各自的文件。但实际上他们的文件都是放在同一个物理磁盘上的甚至同一个逻辑分区或者目录里,但是由于 Linux 的 用户管理 和 权限机制,不同用户不可以轻易地查看、修改彼此的文件。
下面我们就来学习一下 Linux 下的账户管理的基础知识。
2.1 查看用户请打开终端,输入命令:
123$ who am i或者$ who mom likes
输出的第一列表示打开当前伪终端的用户的用户名(要查看当前登录用户的用户名,去掉空格直接使用 whoami 即可),第二列的 pts/0 中 pts 表示伪终端,所谓伪是相对于 /dev/tty 设备而言的,还记得上一节讲终端时的那七个使用 [Ctrl]+[Alt]+[F1]~[F7] 进行切换的 /dev/tty 设备么,这是“真终端”,伪终端就是当你在图形用户界面使用 /dev ...
Linux 目录结构及文件基本操作
实验楼《Linux 基础入门》第四节 Linux 目录结构及文件基本操作笔记
Linux 目录结构
Linux 文件基本操作新建空白文件1$ touch test
新建目录12$ mkdir mydir$ mkdir -p father/son/grandson
复制文件1$ cp test father/son/grandson
复制目录1$ cp -r father family # -r 或者 -R 参数,表示递归复制
删除文件12$ rm test$ rm -f test # -f 参数强制删除
删除目录1$ rm -r family # 跟复制目录一样,要删除一个目录,也需要加上 -r 或 -R 参
移动文件1$ mv file1 Documents # mv 源目录文件 目的目录
重命名文件1$ mv file1 myfile # mv 旧的文件名 新的文件名
批量重命名12345678# 使用通配符批量创建 5 个文件:$ touch file{1..5}.txt# 批量将这 5 个后缀为 .txt ...
test_2 4.1 逆序输出(10分))
你的程序会读入一系列的正整数,预先不知道正整数的数量,一旦读到-1,就表示输入结束。然后,按照和输入相反的顺序输出所读到的数字,不包括最后标识结束的-1。
题目内容你的程序会读入一系列的正整数,预先不知道正整数的数量,一旦读到-1,就表示输入结束。然后,按照和输入相反的顺序输出所读到的数字,不包括最后标识结束的-1。
输入格式一系列正整数,输入-1表示结束,-1不是输入的数据的一部分。
输出格式按照与输入相反的顺序输出所有的整数,每个整数后面跟一个空格以与后面的整数区分,最后的整数后面也有空格。
输入样例1 2 3 4 -1
输出样例4 3 2 1
限制时间限制:500ms 内存限制:32000kb
代码实现C语言12345678910111213141516171819202122232425262728# include<stdio.h># include<stdlib.h>typedef struct _node { int value; struct _node* before;} Node;int main () { ...
test_2 1.1 字符串比对(10分)
题目说起来很简单,你会读到两个字符串,每个字符串占据一行,每个字符串的长度均小于10000字符,而且第一个字符串的长度小于第二个字符串的。你的程序要找出第一个字符串在第二个字符串中出现的位置,输出这些位置,如果找不到,则输出-1。
题目内容题目说起来很简单,你会读到两个字符串,每个字符串占据一行,每个字符串的长度均小于10000字符,而且第一个字符串的长度小于第二个字符串的。你的程序要找出第一个字符串在第二个字符串中出现的位置,输出这些位置,如果找不到,则输出-1。
注意,第一个字符的位置是0。
注意,第一个字符串在第二个字符串中的位置可能不止一处。
注意,字符串中可能含有空格。
注意,两个字符串的长度一定大于0。
输入格式两个字符串,一行一个。
输出格式第一个字符串在第二个字符串中出现的位置,按照从小到到的顺序排列,每个数字后面有一个空格。
如果在第二个字符串中找不到第一个字符串,则输出-1。
输入样例abbaababbba abbabbabbabbaacc
输出样例8 11 14 17
限制时间限制:500ms 内存限制:32000kb
代码实现C语言123456789101112 ...
test 8.2 GPS数据处理(6分)
现在,你的程序要读入一系列GPS输出,其中包含$GPRMC,也包含其他语句。在数据的最后,有一行单独的 END 表示数据的结束。
你的程序要从中找出$GPRMC语句,计算校验和,找出其中校验正确,并且字段2表示已定位的语句,从中计算出时间,换算成北京时间。一次数据中会包含多条$GPRMC语句,以最后一条语句得到的北京时间作为结果输出。
题目内容NMEA-0183协议是为了在不同的GPS(全球定位系统)导航设备中建立统一的BTCM(海事无线电技术委员会)标准,由美国国家海洋电子协会(NMEA-The National Marine Electronics Associa-tion)制定的一套通讯协议。GPS接收机根据NMEA-0183协议的标准规范,将位置、速度等信息通过串口传送到PC机、PDA等设备。
NMEA-0183协议是GPS接收机应当遵守的标准协议,也是目前GPS接收机上使用最广泛的协议,大多数常见的GPS接收机、GPS数据处理软件、导航软件都遵守或者至少兼容这个协议。
NMEA-0183协议定义的语句非常多,但是常用的或者说兼容性最广的语句只有$GPGGA、$GPGSA、$G ...
win10 音量调节快捷键设置
小米的悦米机械键盘买回家以后,发现键盘上没有提供音量调节的快捷键。因为早都被笔记本和带音量调节快捷键的键盘惯坏了,每次到任务栏调节音量感觉特别不方便,所以必须手动设置一个。
导入注册表在网上找到了一个导入注册表的方法。
1234 Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]"Scancode Map"=hex:00,00,00,00,00,00,00,00,03,00,00,00,30,E0,43,00,2E,E0,42,00,00,00,00,00
新建一个文本文档,将上面这段代码复制进去保存,修改文件后缀名为.reg,双击运行之后重启计算机。键盘上的F8就被替换成音量减,F9被替换成音量加。反正F8和F9基本没怎么用过,换成音量加减多发挥作用也好。
hex 后的数字的含义前 8 个 00前8个00是版本号和头部字节.
03,00,00,0003表示映射数,02表示 ...
test 8.1 单词长度(4分))
输入在一行中给出一行文本,以‘.’结束,结尾的句号不能计算在最后一个单词的长度内。在一行中输出这行文本对应的单词的长度,每个长度之间以空格隔开,行末没有最后的空格。
题目内容你的程序要读入一行文本,其中以空格分隔为若干个单词,以‘.’结束。你要输出这行文本中每个单词的长度。这里的单词与语言无关,可以包括各种符号,比如“it’s”算一个单词,长度为4。注意,行中可能出现连续的空格。
输入格式输入在一行中给出一行文本,以‘.’结束,结尾的句号不能计算在最后一个单词的长度内。
输出格式在一行中输出这行文本对应的单词的长度,每个长度之间以空格隔开,行末没有最后的空格。
输入样例It’s great to see you here.
输出样例4 5 2 3 3 4
限制时间限制:500ms内存限制:32000kb
代码实现C语言123456789101112131415161718192021#include<stdio.h>#include<string.h>int main() { char words[100]; while (1) { sc ...
test 7.2 鞍点(5分)
给定一个n*n矩阵A。矩阵A的鞍点是一个位置(i,j),在该位置上的元素是第i行上的最大数,第j列上的最小数。一个矩阵A也可能没有鞍点。你的任务是找出A的鞍点。
题目内容给定一个n*n矩阵A。矩阵A的鞍点是一个位置(i,j),在该位置上的元素是第i行上的最大数,第j列上的最小数。一个矩阵A也可能没有鞍点。
你的任务是找出A的鞍点。
输入格式输入的第1行是一个正整数n, (1<=n<=100),然后有n行,每一行有n个整数,同一行上两个整数之间有一个或多个空格。
输出格式对输入的矩阵,如果找到鞍点,就输出其下标。下标为两个数字,第一个数字是行号,第二个数字是列号,均从0开始计数。如果找不到,就输出NO题目所给的数据保证了不会出现多个鞍点。
输入样例41 7 4 1 4 8 3 6 1 6 1 2 0 7 8 9
输出样例2 1
限制时间限制:500ms 内存限制:32000kb
代码实现C语言12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505 ...