Sponsored Content
Top Forums UNIX for Dummies Questions & Answers Removing empty folders using 'find' Post 302187354 by era on Monday 21st of April 2008 02:24:03 AM
Old 04-21-2008
Maybe it would be better to start a new thread for this question, but anyway, here goes.

1. Search for any directory

2. If directory contains any non-dot files, skip it (= mark for keeping).

3. Otherwise, print it.

Code:
find -type d -print |
while read dir; do
  keep=false
  for file in "$dir"/*; do
    case $file in
      "$dir"/.*) continue;;  # redundant?  see below
      # "$dir"/\*) continue;;  # maybe need this too, depend on globbing settings
      *) keep=true; break;;
    esac
  done
  if ! $keep; then
    echo "$dir"
  fi
done

Maybe radoulov can come up with an elegant one-liner for this; it's not particularly succinct.

This just echoes the directories; if it seems to work for you, you can change the echo to rm -rf

If your shell doesn't expand non-matching wildcards to an empty string, you might need the case which I commented out, too. (Actually maybe the .* case is redundant; wildcards don't expand dotfiles in bash at least.)

Last edited by era; 04-21-2008 at 03:31 AM.. Reason: empty-glob observation
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Removing old folders

All Please help me to remove old files. For example /usr/exp/ - inside this Apr 02 - dir02 Apr 03 - dir03 Apr 04 - dir04 Apr 05 - dir05 Apr 06 - dir06 Apr 07 - dir07 Apr 03 - file03 I want to delete all the folders 2 days before created.Not the fil03 even though it is 2 days old. ... (1 Reply)
Discussion started by: DeepakXavier
1 Replies

2. UNIX for Dummies Questions & Answers

zip nesting empty folders

I'm using the following command to zip a project file, but when it finishes, the resulting zip file contains all the directories above the file I wanted zipped, myapp.app, each one empty until you get to the actual app. zip -r myapp.app.zip ... (0 Replies)
Discussion started by: groundlevel
0 Replies

3. UNIX for Dummies Questions & Answers

how to find empty folders without using -empty

hi all: my solaris FIND does not support find myFolder -type d -empty how can i find the empty folders? thanks! (7 Replies)
Discussion started by: lasse
7 Replies

4. UNIX for Dummies Questions & Answers

Removing empty folders using the "find" command

Hi I'm trying to remove empty sub-folders from 1 main folder using the find method, but the "- empty" parameter isn't recognized by my Unix version. Any idea how to implement such thing? Thanks. (3 Replies)
Discussion started by: biot
3 Replies

5. Shell Programming and Scripting

removing empty tags

Hi, I have a file as shown below. <crown:clinicalData> <crown:alb date="2008-07-10" lowValue="3.50" method="BCG" value="3.50"/> <crown:cre date="2008-07-10" value="9.5"></crown:cre> <crown:ktvHdAd> </crown:ktvHdAd> <crown:ktvPdAd> </crown:ktvPdAd> ... (1 Reply)
Discussion started by: vijayhai
1 Replies

6. Shell Programming and Scripting

Find empty folders

In current folder, there are many subfolders, subfolder's subfolders... under it. How can I find out the empty folders with no files in it. I only need the top folder list. For example, I have folders like below: a/b/c a/b/x/x.txt a/s a/s/y I need get the folder a/s, but not... (6 Replies)
Discussion started by: rdcwayx
6 Replies

7. UNIX for Dummies Questions & Answers

Removing empty folders

Hello, I have a folder that contains all my music. Recently, I started using a different media player, and I let it manage my music folder. It has sorted all my music neatly in folders by artist and album. However, all the old folders that the songs used to be in are still there, yet they are... (2 Replies)
Discussion started by: emveedee
2 Replies

8. Shell Programming and Scripting

Deleting empty folders

Hey, I need help with writing a shell script that deletes empty folders..anyone? :) Thank you! (5 Replies)
Discussion started by: putukas
5 Replies

9. Windows & DOS: Issues & Discussions

Empty folders with SFU

Hi all, i am currently setting my windows XP environment to use with Services for Unix (NFS Client) to mount my unix file system as a network drive. However, though i could mount the unix file directory successful, but the folder is empty (which is not). Why is this so? i have imported my unix... (6 Replies)
Discussion started by: lchunleo
6 Replies

10. UNIX for Dummies Questions & Answers

How to delete some empty folders?

I have an amount of folders and I want to delete only the empty ones. But I have more than 200 empty folders, so I would preffer do not delete one by one... I know it is possible, but I don't know how. I've tried with the size, using 'du' command, and saving the result in a file. After that, I made... (3 Replies)
Discussion started by: saitsug
3 Replies
GLPUSHNAME(3G)															    GLPUSHNAME(3G)

NAME
glPushName, glPopName - push and pop the name stack C SPECIFICATION
void glPushName( GLuint name ) PARAMETERS
name Specifies a name that will be pushed onto the name stack. C SPECIFICATION
void glPopName( void ) DESCRIPTION
The name stack is used during selection mode to allow sets of rendering commands to be uniquely identified. It consists of an ordered set of unsigned integers and is initially empty. glPushName causes name to be pushed onto the name stack. glPopName pops one name off the top of the stack. The maximum name stack depth is implementation-dependent; call GL_MAX_NAME_STACK_DEPTH to find out the value for a particular implementa- tion. It is an error to push a name onto a full stack, or to pop a name off an empty stack. It is also an error to manipulate the name stack between the execution of glBegin and the corresponding execution of glEnd. In any of these cases, the error flag is set and no other change is made to GL state. The name stack is always empty while the render mode is not GL_SELECT. Calls to glPushName or glPopName while the render mode is not GL_SELECT are ignored. ERRORS
GL_STACK_OVERFLOW is generated if glPushName is called while the name stack is full. GL_STACK_UNDERFLOW is generated if glPopName is called while the name stack is empty. GL_INVALID_OPERATION is generated if glPushName or glPopName is executed between a call to glBegin and the corresponding call to glEnd. ASSOCIATED GETS
glGet with argument GL_NAME_STACK_DEPTH glGet with argument GL_MAX_NAME_STACK_DEPTH SEE ALSO
glInitNames(3G), glLoadName(3G), glRenderMode(3G), glSelectBuffer(3G) GLPUSHNAME(3G)
All times are GMT -4. The time now is 03:17 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy