Sponsored Content
Full Discussion: Soft link/file name problem
Top Forums Shell Programming and Scripting Soft link/file name problem Post 302281672 by otheus on Thursday 29th of January 2009 09:42:58 AM
Old 01-29-2009
Change the find command to call a script such as "makelink" which accepts two arguments, the origin path name and the destination dir.

Then, that script will handle the details, and looks something like this:
Code:
filepath=$1
file=${1##*/}   # works in ksh and bash. Otherwise use `basename $1`
dir=$2
while [ -f $dir/$file -o -L $dir/$file ]; do
   # TODO transform  $file here
done
ln -s $filepath $dir/$file

Now, I don't want to completely spoil it for you. How you do the TODO part isn't standard, but how you want to name your files. Do you want them to be numbered like in Window, or something like "file1.jpg" and "file2.jpg" or more exotic like "file0001.jpg" or maybe "file from vol1.jpg" ?
 

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

Differences between hard link and soft link

Hi all! I'd like to know the differences between hard links and soft links. I've already read the ln manpage, but i'm not quite sure of what i understood. Does a hard link sort of copy the file to a new name, give it the same inode number and same rights? What exactly should I do to do this:... (3 Replies)
Discussion started by: penguin-friend
3 Replies

2. UNIX for Dummies Questions & Answers

Difference between hard link and soft link in unix

Hi All, Can any one please explain me what is the difference between hard link and soft link in UNIX. Thanks in advance Raja Chokalingam. (2 Replies)
Discussion started by: RAJACHOKALINGAM
2 Replies

3. UNIX for Dummies Questions & Answers

Hard Link vs SOft Link????

Hi PLease let me know the usage of Hard Link vs Soft Link i.e what is the basic difference and what happens when one file is changed or deleted in both the cases??? thanks (3 Replies)
Discussion started by: skyineyes
3 Replies

4. UNIX for Dummies Questions & Answers

Difference between hard link and soft link

Hi Experts, Please help me out to find out difference between a hard link and a soft link. I am new in unix plz help me with some example commands ( for creating such links). Regards S.Kamakshi :) (2 Replies)
Discussion started by: kamakshi s
2 Replies

5. UNIX for Dummies Questions & Answers

Can the timestamp of a soft link be changed?

I was wondering if it was at all possible to change the timestamp of a soft link. I want to change it to a time in the past before it was created. Sceanrio: In a directory i have a number of softlinks whih point to files, a script processes these files oldest first bassed on the time the... (8 Replies)
Discussion started by: cdoyle
8 Replies

6. Shell Programming and Scripting

soft link issue

Hi , When installing oracle software a set of directories are created under the home directories. Since the home directory is usually not big , i would like to create a soft link from the home directory to mount point with alot of free space , that way the logs will not be wriiten under the... (1 Reply)
Discussion started by: yoavbe
1 Replies

7. Shell Programming and Scripting

how to remove soft link

hi i have create a soft link using below command. ln -s <filename> <dirmane>where file name i use is t1 and dir name was t2. i deleted the dir t2 using command rm -rf to remove the soft link . however again i create a file a using the name t2 and when i just try to link t1 to t2 ... (1 Reply)
Discussion started by: scriptor
1 Replies

8. Solaris

Soft link issue

I did restore from netbackup for root file system on separate slice instead of corrupted one. After restoration I found there are number of soft link issues lie e.g libabcxyx > /mnt/usr/lib it should be libabcxyz > /usr/lib does any have solution to change symbolic link changed in... (1 Reply)
Discussion started by: nimish_mehta
1 Replies

9. Shell Programming and Scripting

Soft link

can u help me out how change the hooked file below. VEUEMASTER.txt -> /sbvnj/kfls//VSUE_OBR_MAER.txt.201503230800 (4 Replies)
Discussion started by: ramkumar15
4 Replies

10. UNIX for Advanced & Expert Users

A query on soft-link

Hi All, I tried creating a soft link with the file itself. It got created successfully. bash-3.2$ ls -l a lrwxrwxrwx 1 ebrigup other 1 Oct 5 19:14 a -> a bash-3.2$ Can anyone explain what is the possible use of it. I dont see any except practically wasting an inode... (2 Replies)
Discussion started by: brij123
2 Replies
ln(1B)						     SunOS/BSD Compatibility Package Commands						    ln(1B)

NAME
ln - make hard or symbolic links to files SYNOPSIS
/usr/ucb/ln [-fs] filename [linkname] /usr/ucb/ln [-fs] pathname... directory DESCRIPTION
The /usr/ucb/ln utility creates an additional directory entry, called a link, to a file or directory. Any number of links can be assigned to a file. The number of links does not affect other file attributes such as size, protections, data, etc. filename is the name of the original file or directory. linkname is the new name to associate with the file or filename. If linkname is omitted, the last component of filename is used as the name of the link. If the last argument is the name of a directory, symbolic links are made in that directory for each pathname argument; /usr/ucb/ln uses the last component of each pathname as the name of each link in the named directory. A hard link (the default) is a standard directory entry just like the one made when the file was created. Hard links can only be made to existing files. Hard links cannot be made across file systems (disk partitions, mounted file systems). To remove a file, all hard links to it must be removed, including the name by which it was first created; removing the last hard link releases the inode associated with the file. A symbolic link, made with the -s option, is a special directory entry that points to another named file. Symbolic links can span file sys- tems and point to directories. In fact, you can create a symbolic link that points to a file that is currently absent from the file sys- tem; removing the file that it points to does not affect or alter the symbolic link itself. A symbolic link to a directory behaves differently than you might expect in certain cases. While an ls(1) on such a link displays the files in the pointed-to directory, an `ls -l' displays information about the link itself: example% /usr/ucb/ln -s dir link example% ls link file1 file2 file3 file4 example% ls -l link lrwxrwxrwx 1 user 7 Jan 11 23:27 link -> dir When you use cd(1) to change to a directory through a symbolic link, you wind up in the pointed-to location within the file system. This means that the parent of the new working directory is not the parent of the symbolic link, but rather, the parent of the pointed-to direc- tory. For instance, in the following case the final working directory is /usr and not /home/user/linktest. example% pwd /home/user/linktest example% /usr/ucb/ln -s /var/tmp symlink example% cd symlink example% cd .. example% pwd /usr C shell user's can avoid any resulting navigation problems by using the pushd and popd built-in commands instead of cd. OPTIONS
-f Force a hard link to a directory. This option is only available to the super-user, and should be used with extreme caution. -s Create a symbolic link or links. USAGE
See largefile(5) for the description of the behavior of ln when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes). EXAMPLES
Example 1 The /usr/ucb/ln command The commands below illustrate the effects of the different forms of the /usr/ucb/ln command: example% /usr/ucb/ln file link example% ls -F file link file link example% /usr/ucb/ln -s file symlink example% ls -F file symlink file symlink@ example% ls -li file link symlink 10606 -rw-r--r-- 2 user 0 Jan 12 00:06 file 10606 -rw-r--r-- 2 user 0 Jan 12 00:06 link 10607 lrwxrwxrwx 1 user 4 Jan 12 00:06 symlink -> file example% /usr/ucb/ln -s nonesuch devoid example% ls -F devoid devoid@ example% cat devoid devoid: No such file or directory example% /usr/ucb/ln -s /proto/bin/* /tmp/bin example% ls -F /proto/bin /tmp/bin /proto/bin: x* y* z* /tmp/bin: x@ y@ z@ ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Availability |SUNWscpu | +-----------------------------+-----------------------------+ SEE ALSO
cp(1), ls(1), mv(1), rm(1), link(2), readlink(2), stat(2), symlink(2), attributes(5), largefile(5) NOTES
When the last argument is a directory, simple basenames should not be used for pathname arguments. If a basename is used, the resulting symbolic link points to itself: example% /usr/ucb/ln -s file /tmp example% ls -l /tmp/file lrwxrwxrwx 1 user 4 Jan 12 00:16 /tmp/file -> file example% cat /tmp/file /tmp/file: Too many levels of symbolic links To avoid this problem, use full pathnames, or prepend a reference to the PWD variable to files in the working directory: example% rm /tmp/file example% /usr/ucb/ln -s $PWD/file /tmp lrwxrwxrwx 1 user 4 Jan 12 00:16 /tmp/file -> /home/user/subdir/file SunOS 5.11 11 Mar 1994 ln(1B)
All times are GMT -4. The time now is 07:14 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy