Matt Arnilo S. Baluyos (Mailing Lists)
2008-Mar-04 23:20 UTC
[CentOS] Overwrite target of ln
Hi all, Sorry if this seems too basic. But is there a way to overwrite the target of a symbolic link without first deleting the symlink itself? For example, if I have this: public_html -> releases/b2b-20080228 ... and there's a new update, I can then just do the following: $ ln releases/site-latest public_html I tried using the -f option but it doesn't seem to work as expected. -- Stand before it and there is no beginning. Follow it and there is no end. Stay with the ancient Tao, Move with the present.
On Wed, Mar 05, 2008 at 07:20:50AM +0800, Matt Arnilo S. Baluyos (Mailing Lists) alleged:> Hi all, > > Sorry if this seems too basic. > > But is there a way to overwrite the target of a symbolic link without > first deleting the symlink itself? > > For example, if I have this: > > public_html -> releases/b2b-20080228 > > ... and there's a new update, I can then just do the following: > > $ ln releases/site-latest public_html > > I tried using the -f option but it doesn't seem to work as expected.Your example doesn't have -s? I assume that was a typo? Anyways, ln -sf does exactly what you describe. $ ls -l foo lrwxrwxrwx 1 garrick rds 3 Mar 4 15:24 foo -> bar $ ln -sf bar2 foo $ ls -l foo lrwxrwxrwx 1 garrick rds 4 Mar 4 15:24 foo -> bar2 -- Garrick Staples, GNU/Linux HPCC SysAdmin University of Southern California Please avoid sending me Word or PowerPoint attachments. See http://www.gnu.org/philosophy/no-word-attachments.html -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available URL: <http://lists.centos.org/pipermail/centos/attachments/20080304/1d29b89f/attachment-0002.sig>
Matt Arnilo S. Baluyos (Mailing Lists)
2008-Mar-04 23:39 UTC
[CentOS] Overwrite target of ln
On 05/03/2008, Garrick Staples <garrick at usc.edu> wrote:> On Wed, Mar 05, 2008 at 07:20:50AM +0800, Matt Arnilo S. Baluyos (Mailing Lists) alleged: > > > Hi all, > > > > Sorry if this seems too basic. > > > > But is there a way to overwrite the target of a symbolic link without > > first deleting the symlink itself? > > > > For example, if I have this: > > > > public_html -> releases/b2b-20080228 > > > > ... and there's a new update, I can then just do the following: > > > > $ ln releases/site-latest public_html > > > > I tried using the -f option but it doesn't seem to work as expected. > > > Your example doesn't have -s? I assume that was a typo? > > Anyways, ln -sf does exactly what you describe. > > $ ls -l foo > lrwxrwxrwx 1 garrick rds 3 Mar 4 15:24 foo -> bar > $ ln -sf bar2 foo > $ ls -l foo > lrwxrwxrwx 1 garrick rds 4 Mar 4 15:24 foo -> bar2Hi, Sorry. That was a typo. I have just tried using a target as a file and it does seem to work with the -f option. It's only when the target is a directory that it fails: $ ll drwxrwxr-x 2 matt matt 4096 Mar 4 14:34 dir1 drwxrwxr-x 2 matt matt 4096 Mar 4 14:34 dir2 lrwxrwxrwx 1 matt matt 4 Mar 4 14:35 link -> dir1 $ ln -s dir2 link $ ll drwxrwxr-x 2 matt matt 4096 Mar 4 14:35 dir1 drwxrwxr-x 2 matt matt 4096 Mar 4 14:34 dir2 lrwxrwxrwx 1 matt matt 4 Mar 4 14:35 link -> dir1 -- Stand before it and there is no beginning. Follow it and there is no end. Stay with the ancient Tao, Move with the present.