02-16-2017
Quote:
Originally Posted by
bakunin
I don't think so: because the size (which is a small fraction of a GB) is rounded up to the next unit (GB here, therefore 1GB) all files with 1GB and less (but at least 1c) are shown.
I hope this helps.
bakunin
Hi bakunin,
No. When no units are specified, such as with
-size 2, it is looking for a file that has a size that fits in 2 512-byte blocks which corresponds to a file with a file size that is 513 through 1024 bytes. But when units are specified, an unsigned number is looking for a file with the exact size specified (at least with a BSD-based
find utility which is also used on macOS systems). Note that the POSIX standard's
find utility's
-size primary does not include a units modifier except
c (which specifies that the number is counting bytes instead of 512-byte blocks); it just has negative numbers (meaning less than number), unsigned numbers (meaning exactly that number), and positive numbers (with a leading + meaning more than number).
If some other system's
find utility treats unit modifiers as block size multipliers instead of just numbers of bytes, that difference in behavior from BSD might be a reason why POSIX hasn't standardized modifiers other than
c.
Hi bodisha,
What operating system are you using?
These 2 Users Gave Thanks to Don Cragun For This Post:
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
Hi,
how can I get only useful results from
find / -size 10000000
without the "Permissions denied" files ?
tks
C (5 Replies)
Discussion started by: Carmen123
5 Replies
2. UNIX for Dummies Questions & Answers
Hi--
Ok. I have now found that:
find -x -ls
will do what I need as far as finding all files on a particular volume. Now I need to sort the results by the file's modification date/time.
Is there a way to do that?
Also, I notice that for many files, whereas the man for find says ls is... (8 Replies)
Discussion started by: groundlevel
8 Replies
3. Shell Programming and Scripting
I am looking for files of a certian type and logging them. After they are logged they need to be moved to a different directory. HOw can i incorporate that in my current script?
CSV_OUTFILE="somefile.csv"
find . -name W\* -exec printf "%s,%s,OK" {} `date '+%Y%m%d%H%M%S'` \; > ${CSV_OUTFILE}
... (9 Replies)
Discussion started by: pimentelgg
9 Replies
4. UNIX for Advanced & Expert Users
I'm attempting to read a file that is composed of complex 32-bit floating point values on Solaris 10 that came from a 64-bit Red Hat computer.
When I first tried reading the file, it looked like there was a byte-swapping problem and after running the od command on the file Solaris and Red Hat... (2 Replies)
Discussion started by: GoDonkeys
2 Replies
5. Programming
I was running some timings in my code to see which of several functions was the best and I've been getting some odd results. Here's the code I'm using:
static double time_loop(int (*foo)(int)) {
clock_t start, end;
int n = 0, i = 0;
start = clock();
for (; i <= MAXN; i++)
if... (6 Replies)
Discussion started by: CRGreathouse
6 Replies
6. Shell Programming and Scripting
I have an issue with a korn shell script that I am writing. The script parses through a configuration file which lists a heap of path/directories for some files which need to be FTP'd. Now the script needs to check whether there are any files which have not been processed and are X minutes old.
... (2 Replies)
Discussion started by: MickAAA
2 Replies
7. UNIX for Dummies Questions & Answers
Hi,
I have a problem with a shell script.
The script should find all .cpp and .h files and list them.
With:
for file in `find $src -name '*.h' -o -name '*.cpp'
it gives out this:
H:\FileList\A\E\F\G\newCppFile.cpp
H:\FileList\header01.h
H:\FileList\B\nextCppFile.cpp
... (4 Replies)
Discussion started by: shellBeginner75
4 Replies
8. UNIX for Dummies Questions & Answers
Hi,
Am running the command below to search for files that contains a certain string.
grep -il "shutdown" `find . -type f -mtime -1 -print` | grep "^./scripts/active"
How do I get it to do a ls -l on the list of files? I tried doing ls -l `grep -il "shutdown" `find . -type f -mtime -1... (5 Replies)
Discussion started by: newbie_01
5 Replies
9. UNIX for Dummies Questions & Answers
i feel weird with this 2 command
find /tmp/*test* -user `whoami` -mtime +1 -type f -exec rm -f {}\;
find /tmp/*test* -user `whoami` -mtime +1 -type f -exec ls -lrt {}\;
the first one return correct which only delete those filename that consist *test* where second command it listed all the... (12 Replies)
Discussion started by: lsy
12 Replies
10. Shell Programming and Scripting
I have a text file downloaded from the web, I want to count the unique words used in the file, and a person's speaking length during conversation by counting the words between the opening and closing quotation marks which differ from the standard ASCII code. Also I found out the file contains some... (2 Replies)
Discussion started by: yifangt
2 Replies
DF(1) BSD General Commands Manual DF(1)
NAME
df -- display free disk space
SYNOPSIS
df [-agklmn] [-G | -i | -P] [-t type] [file | file_system ...]
DESCRIPTION
df displays statistics about the amount of free disk space on the specified file_system or on the file system of which file is a part. By
default, all sizes are reported in 512-byte block counts. If neither a file or a file_system operand is specified, statistics for all
mounted file systems are displayed (subject to the -l and -t options below).
Note that the printed count of available blocks takes minfree into account, and thus will be negative when the number of free blocks on the
filesystem is less than minfree.
The following options are available:
-a Show all mount points, including those that were mounted with the MNT_IGNORE flag.
-G Display all the fields of the structure(s) returned by statvfs(2). This option cannot be used with the -i or -P options, and it is
modelled after the Solaris -g option. This option will override the -g, -h, -k, and -m options, as well as any setting of BLOCKSIZE.
-g The -g option causes the numbers to be reported in gigabytes (1024*1024*1024 bytes).
-h "Human-readable" output. Use unit suffixes: Byte, Kilobyte, Megabyte, Gigabyte, Terabyte, Petabyte, Exabyte in order to reduce the
number of digits to four or less.
-i Include statistics on the number of free inodes.
-k By default, all sizes are reported in 512-byte block counts. The -k option causes the numbers to be reported in kilobytes (1024
bytes).
-l Display statistics only about mounted file systems with the MNT_LOCAL flag set. If a non-local file system is given as an argument,
a warning is issued and no information is given on that file system.
-m The -m option causes the numbers to be reported in megabytes (1024*1024 bytes).
-n Print out the previously obtained statistics from the file systems. This option should be used if it is possible that one or more
file systems are in a state such that they will not be able to provide statistics without a long delay. When this option is speci-
fied, df will not request new statistics from the file systems, but will respond with the possibly stale statistics that were previ-
ously obtained.
-P Produce output in the following portable format:
If both the -P and -k option are specified, the output will be preceded by the following header line, formatted to match the data
following it:
"Filesystem 1024-blocks Used Available Capacity Mounted on
"
If the -P option is specified without the -k options, the output will be preceded by the following header line, formatted to match
the data following it:
"Filesystem <blksize>-blocks Used Available Capacity Mounted on
"
The header line is followed by data formatted as follows:
"%s %d %d %d %d%% %s
", <file system name>, <total space>,
<space used>, <space free>, <percentage used>,
<file system root>
Note that the -i option may not be specified with -P.
-t type
Is used to indicate the actions should only be taken on filesystems of the specified type. More than one type may be specified in a
comma-separated list. The list of filesystem types can be prefixed with ``no'' to specify the filesystem types for which action
should not be taken. If a file system is given on the command line that is not of the specified type, a warning is issued and no
information is given on that file system.
ENVIRONMENT
BLOCKSIZE If the environment variable BLOCKSIZE is set, and the -g, -h, -k and -m options are not specified, the block counts will be dis-
played in units of that size block.
SEE ALSO
quota(1), fstatvfs(2), getvfsstat(2), statvfs(2), getbsize(3), getmntinfo(3), fs(5), fstab(5), mount(8), quot(8), tunefs(8)
HISTORY
A df utility appeared in Version 6 AT&T UNIX.
BSD
March 4, 2008 BSD