1. linux如何查找以某个字母打头的文件或文件夹 比如,/etc目录下很多文件,我想列出所有以c开头的文件或文件
ls -al |grep c* 这样就可以了,运用管道命令|。
如何使用命令行在Linux中查找文件和文件夹
1
使用查找命令,“find”命令允许您搜索知道近似文件名的文件。该命令的最简单形式在当前目录中搜索文件,并递归地通过其与所提供的搜索条件匹配的子目录。您可以按名称,所有者,组,类型,权限,日期和其他条件搜索文件。
在提示符下键入以下命令将列出当前目录中的所有文件。
“find”后的点表示当前目录。
如果您只想要显示可执行文件的路径,而不是源和路径(man(页)),请使用该-b选项。例如,该命令whereis -b firefox将仅显示/usr/bin/firefox为结果。这很方便,因为您可能会比搜索该程序的源页面和手册页更频繁地搜索程序的可执行文件。您也可以仅搜索源文件(-s)或仅搜索手册页(-m)。
有关whereis命令的详细信息,请键入man whereis终端窗口,然后按Enter键。
8
了解Whereis命令与哪个命令之间的区别
whereis命令显示命令的二进制,源和手册页的位置,而哪个命令仅显示命令的二进制文件的位置。
whereis命令搜索二进制,源和man文件的特定目录列表,而哪个命令搜索当前用户的PATH环境变量中列出的目录。对于whereis命令,可以在命令的手册页的FILES部分中找到具体目录的列表。
当涉及默认显示的结果时,whereis命令显示它找到的所有内容,而哪个命令只显示找到的第一个可执行文件。您可以使用-a前面讨论过的选项来更改该命令。
因为whereis命令只使用硬编码到命令中的路径,所以您可能并不总是找到您要查找的内容。如果您正在搜索一个程序,则认为可能安装在whereis命令的手册页中未列出的目录中,您可能希望使用该-a选项以查找系统中所有出现的命令,
2. linux c 查看当前目录下是否有指定文件
1. Shell 版本
#获取当前脚本所在绝对路径
cur_dir=$(cd "$(dirname "$0")"; pwd)
2. C语言版本
方法一、用realpath函数。这种方法用于开机启动程序获取自身目录会出错
char current_absolute_path[MAX_SIZE];
//获取当前目录绝对路径
if (NULL == realpath("./", current_absolute_path))
{
printf("***Error***\n");
exit(-1);
}
strcat(current_absolute_path, "/");
printf("current absolute path:%s\n", current_absolute_path);
方法二、用getcwd函数。这种方法用于开机启动程序获取自身目录会出错
char current_absolute_path[MAX_SIZE];
//获取当前目录绝对路径
if (NULL == getcwd(current_absolute_path, MAX_SIZE))
{
printf("***Error***\n");
exit(-1);
}
printf("current absolute path:%s\n", current_absolute_path);
方法三、用readlink函数。这种方法最可靠,可用于开机启动程序获取自身目录
char current_absolute_path[MAX_SIZE];
//获取当前程序绝对路径
int cnt = readlink("/proc/self/exe", current_absolute_path, MAX_SIZE);
if (cnt < 0 || cnt >= MAX_SIZE)
{
printf("***Error***\n");
exit(-1);
}
//获取当前目录绝对路径,即去掉程序名
int i;
for (i = cnt; i >=0; --i)
{
if (current_absolute_path[i] == '/')
{
current_absolute_path[i+1] = '\0';
break;
}
}
printf("current absolute path:%s\n", current_absolute_path);
3. linux用C如何判断一个目录是否为空
下面的程序在solaris8、gcc编译通过的,如果一个目录是空的,输出为2。
QUOTE: #include #include #include int main(int argc , char **argv){DIR *dirp;int num=0;dirp = opendir(argv[1]);
while (dirp) {
if ( readdir(dirp) != NULL)++num;elsebreak;}closedir(dirp);
printf("%d\n",num);
}shell中判断目录为空
4. linux下编写c程序放在哪个文件夹下
第一种方法: 改名:mv hello hello.c 编译:首先cd到你源文件的那个目录下,这样省去了指定绝对路径的麻烦,比如cd到桌面,然后:gcc hello.c -o hello 运行:./hello 第二种方法: 启动终端后 gcc /桌面/ hello.c ./a.out 第三种方法: 1.更改所...
5. linux下C 编程问题,总是提示bash :找不到目录或文件,哪位大侠给点提示,急啊~~~
gcc my_chmod.c
./a.out
6. linux c 检查文件夹是否有文件
#include <stdio.h>
#include <sys/stat.h>
#include <unistd.h>
int main(int argc,char *argv[])
{
struct stat st;
printf("%s",argv[1]);
stat(argv[1],&st);
if (S_ISDIR(st.st_mode))
printf("is a dir\n");
else
printf("is not a dir\n");
return 0;
}
虚拟机上测过了.
是验证输入的第一个参数是不是目录.