计算字符串长度可用的三种方法:echo “$str”|awk '{print length($0)}'expr length “$str”echo “$str”|wc -c但是第三种得出的值会多1,可能是把结束符也计算在内了。判断字符串为空的方法有三种:if [ "$str" = "" ]if [ x"$str" = x ]基本数据类型可以指定int的长度:类似的,还有uint32_t和uint64_t其它数据类型1,size_t:跟机器字
长一样;2,off_t:32位机器下默认是32位长,这时无法对大于4G的文件偏移 *** 作,这时off_t = __off_t;如果想进行大于4G的文件偏移 *** 作,可以在程序中加入头文件之前定义这时off_t = __off64_t,具体定义在unistd.h中;对于64位机,默认就是64位长。#define _FILE_OFFSET_BITS 643,ino_t:跟机器字长一样。
题主你好,
这个长度不是绝对的, 但大多数的linux系统: 文件名长度限制是
255个字符 路径名长度限制是
4096个字符
-----
具体情况题主可以在自己电脑上执行以下两个命令看一下自己本地的linux系统这两个长度情况:
文件名最大长度: getconf NAME_MAX /
路径名最大长度: getconf PATH_MAX /
我电脑上的情况:
-----
另外,这个信息其实都在linux一个名叫limits.h的头文件中写着呢, 有兴趣的话,题主自己可以找一下:
find /usr | grep limits.h | xargs -I {} grep -H 'NAME_MAX' {}
find /usr | grep limits.h | xargs -I {} grep -H 'PATH_MAX' {}
=====
希望可以帮到题主, 欢迎追问.
评论列表(0条)