The ls output is showing the size of the files listed (note that a directory is just one type of a file).
The du -hs output is showing the sizes of the blocks allocated to the file and (when the file is a directory) the size of the blocks allocated to the directory added to the sizes of the blocks allocated to all files in the file hierarchy rooted in that directory. Note also that the sizes of files in a file hierarchy reported by du -hs might not be what you expect. If there are hard links to files in a hierarchy, the blocks allocated to each linked file will only be counted once. Therefore, the sum of the sizes reported by:
might not be the sum of the sizes reported by:
And, if there are sparse files, the file size may be huge, but the number of blocks allocated to the file may be tiny.
And note that the size of a directory varies from filesystem type to filesystem type. On some filesystem types, the size of a directory shown by ls will be the size of the directory entries in that directory; in other filesystem types, it will just be the number of directory entries contained in that directory; and in other filesystem types, it might be something else. (On some filesystem types, some directory entries can be stored in the i-node for the directory. This makes the size of the directory zero until enough space is needed by directory entries to overflow the space in the i-node.)
This User Gave Thanks to Don Cragun For This Post:
I am trying to load a group of files and their last dates modified into a text file that will in turn be used with SQL*Loader to load these files into Oracle. I am using a *.ksh script. I am getting the name of the file in by using the following:
for file_ext in 'cat loaddir.ext';
do
find... (2 Replies)
Hello,
I'm on a practical training and i have to change a shell script which print out a HTML-File with all Printers (and features example: IP, Mac etc.) they have in the factory.
The Features of the Printers are on each separate file. i mean every printer have an own file with it features.
... (12 Replies)
i have a k shell script that grep less than certain modified date
-------------------------------------------------
#!/bin/ksh
for i in *
do
day=`ls -ltr | grep $i | tr -s " " | cut -d " " -f6-7 | awk 'substr($0,7,4)substr($0,1,5)substr($0,11)<"Feb 1"' `
echo $day
done... (2 Replies)
Sorry for the basic question, but I have a feeling that my developers are circumventing our change control process, and I want to be able to easily keep track of the last modified date of sub-folders of the production folder.
Basically, we have this major folder PROD, and then each application... (1 Reply)
Hello all - I've looked and have not been able to find a "find" command that will list the last modified date of files within a specific directory and its subdirectories. If anyone knows of such a command it would be very much appreciated!
If possible, I would like to sort this output and have... (5 Replies)
Hi ,
In my directory , i have many days file but i want to see all those which are of todays date.
i tried this but it gives all the files
mtime -0 |ls -ltr
I tried the below option as well.
19635 find -iname "*.LOG" -mtime
19636 ls -ltr *.LOG -mtime -1
19637 ls -ltr *.LOG... (7 Replies)
Can someone draw up a script that for every file, folder and subfolder and files that will copy the creation date over top of the modified date??
I know how to touch every file recursively, but no idea how to read a files creation date then use that to touch the modification date of that file,... (3 Replies)
I'm using a script that I need to get a file's "last modified date" in a format like 01:51:14 PM. We are running on AIX 6.1.0.0. I can't seem to find the right command parameters. Help! (4 Replies)
Hi,
Am performing a find based on filename and result can contain multiple files being found
Let's say my find command is
find /Archive -f -name 12345.pdf
and result of find command is
/Archive/Folder A/12345.pdf
/Archive/Folder B/12345.pdf
please note white space in folder names
I... (2 Replies)
Discussion started by: gigagigosu
2 Replies
LEARN ABOUT OSX
setfile
SETFILE(1) BSD General Commands Manual SETFILE(1)NAME
/usr/bin/SetFile -- set attributes of files and directories
SYNOPSIS
/usr/bin/SetFile [-P] [-a attributes] [-c creator] [-d date] [-m date] [-t type] file ...
DESCRIPTION
/usr/bin/SetFile is a tool to set the file attributes on files in an HFS+ directory. It attempts to be similar to the setfile command in MPW.
It can apply rules to more than one file with the options applying to all files listed.
Flags:
-P Acts on a symlink file instead on the file the symlink resolves to.
-a attributes Sets the file attributes bits where attributes is a string of case sensitive letters. Each letter corresponds to a file
attribute: an uppercase letter indicates that the attribute bit is set (1), a lowercase letter indicates that it is not (0).
Note: attributes not specified remain unchanged.
A | a Alias file
B | b Has bundle
C | c Custom icon (allowed on folders)
D | d Located on the desktop (allowed on folders)
E | e Extension is hidden (allowed on folders)
I | i Inited - Finder is aware of this file and has given it a location in a window. (allowed on folders)
L | l Locked
M | m Shared (can run multiple times)
N | n File has no INIT resource
S | s System file (name locked)
T | t "Stationery Pad" file
V | v Invisible (allowed on folders)
Z | z Busy (allowed on folders)
-c creator Specifies the file's creator, where creator can be a string of four MacRoman characters, an empty string ('') designating a
null creator, or a binary, decimal, octal, or hexadecimal number in standard notation (e.g. 0x52486368).
-d date Sets the creation date, where date is a string of the form: "mm/dd/[yy]yy [hh:mm:[:ss] [AM | PM]]" Notes: Enclose the string
in quotation marks if it contains spaces. The date must be in the Unix epoch, that is, between 1/1/1970 and 1/18/2038. If the
year is provided as a two-digit year, it is assumed to be in the 21st century and must be from 00 (2000) through 38 (2038).
-m date Sets the modification date where date is a string of the form in -d above. (mm/dd/[yy]yy [hh:mm:[:ss] [AM | PM]])
-t type Sets the file type, where type can be a string of four MacRoman characters, an empty string ('') designating a null type, or a
binary, decimal, octal, or hexadecimal number in standard notation (e.g. 0x55455955).
RETURN VALUES
0 attributes set
1 syntax error
2 any other error
SEE ALSO GetFileInfo(1)EXAMPLES
This command line sets the modification date of "myFile":
SetFile -m "8/4/2001 16:13" myFile
Mac OS X January 4, 2009 Mac OS X